su镜像(su镜像怎么操作)
Oracle 官方不支持在 Docker 中安装 Oracle Database,但是可以通过使用第三方的镜像和脚本来实现 Oracle 数据库的 Docker 化。下面是一个简单的例子,介绍如何使用 docker-compose 安装 Oracle 11g。
- 首先,在本地创建一个文件夹,用于存放 docker-compose.yml 文件和其他相关文件,例如:
mkdir oracle-dockercd oracle-docker
- 在该文件夹中创建一个名为 docker-compose.yml 的文件,并将以下内容复制到文件中:
version: '3.7'services: oracle_11g: image: registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g container_name: oracle_11g environment: - TZ=Asia/Shanghai volumes: - /etc/localtime:/etc/localtime:ro - ./data/oracle:/data/oracle - ./data/profile:/etc/profile ports: - 1521:1521 privileged: true user: root restart: always command: /bin/bash -c "ln -s $ORACLE_HOME/bin/sqlplus /usr/bin" deploy: resources: limits: memory: 2G reservations: memory: 500M networks: application: aliases: - net-oracle_11gnetworks: application: name: net driver: bridge
/data/profile 为一下内容
vi /etc/profile
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
export ORACLE_SID=helowin
export PATH=$ORACLE_HOME/bin:$PATH
以上配置使用了第三方镜像 registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g,该镜像基于 Oracle Database 11g 构建而成。
- 执行以下命令启动容器:
docker-compose up -d
该命令会下载并启动指定的镜像,并将容器暴露出来的 1521 端口映射到本地的 1521 端口上。
- 等待容器启动完成后,可以使用任意的 Oracle 客户端连接到数据库。
docker exec -it oracle_11g bash
- 设置软连
sqlplus /nolog
如果没有 进行一下操作然后在执行 source /etc/profile 使配置生效
最后方便使用创建软连接 ln -s $ORACLE_HOME/bin/sqlplus /usr/bin
- 切换oracle用户
su - oracle
- 登录sqlplus并修改sys、system用户密码并且创建用户
sqlplus /nolog --登录
startup; --启动数据库,注意第一次进入才执行
conn /as sysdba --连接数据库
alter user system identified by system;–修改system用户账号密码;
alter user sys identified by system;–修改sys用户账号密码;
create user test identified by test; – 创建内部管理员账号密码;
grant connect,resource,dba to test; --将dba权限授权给内部管理员账号和密码;
alter profile default limit password_life_time unlimited; --修改密码规则策略为密码永不过期;
alter system set processes=1000 scope=spfile; --修改数据库最大连接数据;
修改以上信息后,需要重新启动数据库
conn /as sysdba
shutdown immediate; --关闭数据库
startup; --启动数据库
exit:退出软链接
- navicat无法登陆问题
alter system set local_listener=‘(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))’; – 然后重启,如果执行不成也退出
然后退出SQL页面再执行
lsnrctl start #开启监听
dbstart # 启动用户实例
以上就是使用 docker-compose 安装 Oracle 11g 的方法。需要注意的是,该方法使用的是第三方镜像,因此安全性和稳定性需要自行评估。同时,Oracle 官方不支持在 Docker 中运行 Oracle 数据库,因此使用该方法可能会有一些限制和风险。
相关阅读知情人士:马斯克的xAI拟斥资近100亿美元租用Oracle的云服务器
su镜像(su镜像怎么操作)