wget -qO- get.docker.com | bash # 一键安装 docker 容器
systemctl start docker # 启动服务
docker pull loliconneko/oracle-ee-11g # 镜像
docker run -d -p 8080:8080 -p 1521:1521 --restart=always -v /package/oracle:/u01/app/oracle loliconneko/oracle-ee-11g # 启动 oracle
docker logs -f ID # 查看输出日志
# 连接字符串
# hostname: localhost
# port: 1521
# sid: EE
# service name: EE.oracle.docker
# username: system
# password: oracle
# 建表空间、用户
https://www.netnr.com/gist/code/4871611063472502154
# help
https://hub.docker.com/r/loliconneko/oracle-ee-11g
# 修改 Docker 容器内的时间 ,进入容器后执行:
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
echo "Asia/Shanghai" > /etc/timezone
docker exec -it $容器ID /bin/bash # 进入正在运行的某个容器
docker exec -it $容器ID /bin/bash -c "sqlplus sys/oracle as sysdba" # 宿主执行命令
# Oracle 11g 修改字符集 为 ZHS16GBK
./sqlplus sys/oracle as sysdba; # sqlplus "用户/密码 as sysdba"
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 CHARACTER SET ZHS16GBK;
# ORA-12712: new character set must be a superset of old character set
# 提示我们的字符集:新字符集必须为旧字符集的超集,这时我们可以跳过超集的检查做更改:
ALTER DATABASE character set INTERNAL_USE ZHS16GBK;
# 修改最大连接数,查询:
select value from v$parameter where name = 'processes';
select value from v$parameter where name = 'sessions';
# 或者:终端执行
show parameter processes;
show parameter sessions
# 修改连接数(sessions=1.1*process+5)
alter system set processes = 1000 scope = spfile;
alter system set sessions=1105 scope=spfile;
# 启动服务
shutdown immediate;
startup
# 查看 Oracle字符集
select userenv('language') from dual;
# help
https://www.linuxidc.com/linux/2013-01/78286.htm
https://blog.csdn.net/ilifei/article/details/94129307