docker run --name oracle11g --restart unless-stopped -d -e ORACLE_ALLOW_REMOTE=true -e ORACLE_DISABLE_ASYNCH_IO=true -e ORACLE_ENABLE_XDB=true -p 49161:1521 -p 8080:8080 oracleinanutshell/oracle-xe-11g
Login:http://localhost:8080/apex/apex_admin
Username:ADMIN
Passwordadmin
Change password for example to:Oracle_11g
Kickstart zabbix database:# download source files:
cd
v=4.0.17
curl -L "http://downloads.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/$v/zabbix-$v.tar.gz" -o zabbix-$v.tar.gz
tar -vzxf zabbix-$v.tar.gz -C .
cd ~/zabbix-$v/database/oracle
# copy SQL files inside docker container inside 'root' directory
cp * /var/lib/docker/overlay2/7af13f52919e8b6b9bdead765282d66b70f2e6933a6e874e2ce40cc97b60c2e4/merged/root
Navigate to docker container:docker exec -it oracle-xe-11g bash
sqlplus sys as sysdba
# enter 'oracle' as password
Create schema:select parameter,value from v$nls_parameters where parameter='NLS_CHARACTERSET' or parameter='NLS_NCHAR_CHARACTERSET';
# this should report
# NLS_CHARACTERSET
# AL32UTF8
# NLS_NCHAR_CHARACTERSET
# UTF8
# if not then execute these commands:
shutdown immediate
startup mount
alter system enable restricted session;
alter system set job_queue_processes=0;
alter system set aq_tm_processes=0;
alter database open;
ALTER DATABASE NATIONAL CHARACTER SET internal_use UTF8;
shutdown immediate
startup
# check again
select parameter,value from v$nls_parameters where parameter='NLS_CHARACTERSET' or parameter='NLS_NCHAR_CHARACTERSET';
# test some status
select * from v$sysstat;
# https://uberdev.wordpress.com/2011/12/07/zabbix-deployment-on-rhel-with-oracle/
# create zabbix database (table space)
CREATE TABLESPACE "ZABBIX_TS" DATAFILE '/u01/app/oracle/oradata/XE/zabbix_ts.dbf' SIZE 100M AUTOEXTEND ON NEXT 536870912 MAXSIZE 4G LOGGING ONLINE PERMANENT BLOCKSIZE 8192 EXTENT MANAGEMENT LOCAL AUTOALLOCATE SEGMENT SPACE MANAGEMENT AUTO;
CREATE USER zabbix IDENTIFIED BY zabbix DEFAULT TABLESPACE ZABBIX_TS;
GRANT DBA TO zabbix WITH ADMIN OPTION;
exit
# connect to database zabbix. this is a way how to authorize into database with one-liner
sqlplus zabbix/zabbix
# last check if the encoding is right
select parameter,value from v$nls_parameters where parameter='NLS_CHARACTERSET' or parameter='NLS_NCHAR_CHARACTERSET';
# this should report:
# NLS_CHARACTERSET
# AL32UTF8
#
# NLS_NCHAR_CHARACTERSET
# UTF8
SET DEFINE OFF
@schema.sql
@images.sql
@data.sql
# exit the database client
exit
# exit docker container
exit
Related:https://hub.docker.com/r/oracleinanutshell/oracle-xe-11g
https://www.zabbix.com/documentation/4.0/manual/appendix/install/db_scripts#oracle
No comments:
Post a Comment