layout: post title: 使用docker-compose安装Oracle date: 章于 2024-11-25 15:00:40 发布 author: 'zhangtao' header-img: 'img/post-bg-2015.jpg' catalog: false tags: -Docker -docker-compose -oracle
创建docker-compose.yml文件
注意:先注释掉数据卷
version: '3'
services:
oracle11:
image: oracleinanutshell/oracle-xe-11g
container_name: oracle-11
privileged: true
environment:
- TZ=Asia/Shanghai
restart: always
ports:
- "1521:1521"
# volumes:
# - /data/oracle-11/data/oracle/:/u01/app/oracle/
启动容器
docker-compose up -d
复制容器文件到宿主机
mkdir -p /data/oracle-11/data/
docker cp oracle-11:/u01/app/oracle/ /data/oracle-11/data/
关闭容器
docker-compose down
修改docker-compose.yml文件,挂载数据卷,实现数据的持久化
version: '3'
services:
oracle11:
image: oracleinanutshell/oracle-xe-11g
container_name: oracle-11
privileged: true
environment:
- TZ=Asia/Shanghai
restart: always
ports:
- "1521:1521"
volumes:
- /data/oracle-11/data/oracle/:/u01/app/oracle/
启动容器
docker-compose up -d
连接数据库信息
连接地址:ip:1521
SID:XE
username:system
password:oracle
附:创建用户、命名空间、授权
-- 创建用户、命名空间、授权
create user <username> identified by <password>;
-- 修改密码
alter user <username> identified by <password>;
-- 创建命名空间,注意这里的数据存储文件的位置是在容器的位置,与挂载的数据卷的位置无关
create tablespace <tablespacename> datafile '/u01/app/oracle/oradata/XE/xxx.dbf' size 1000M;
-- 将命名空间授权给用户
alter user <username> default tablespace <tablespacename>;
-- 给用户权限
-- 将最高权限授权给用户
grant create session,create table,create view,create sequence,unlimited tablespace to <username>;
grant dba to <username>;
朋友们好用的话,点赞收藏 朋友们好用的话,点赞收藏 朋友们好用的话,点赞收藏