当前位置: 代码网 > 服务器>服务器>云虚拟主机 > Docker安装Oracle创建表空间并导入数据库完整步骤

Docker安装Oracle创建表空间并导入数据库完整步骤

2025年04月24日 云虚拟主机 我要评论
一、docker安装oracle1、检查docker 版本docker version2、docker 下载镜像docker pull registry.cn-hangzhou.aliyuncs.co

一、docker 安装oracle

1、检查docker 版本

docker version

2、docker 下载镜像

docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

3、 docker启动容器

docker run -d -p 30026:1521 -p 8081:8080 --name oracle_11g -e oracle_home=/home/oracle/app/oracle/product/11.2.0/dbhome_2 -e oracle_sid=helowin registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

4、  进入容器内部

docker exec -it oracle_11g bash

# 1. 切换至root用户(默认是oracle用户),密码为helowin
su root

# 2. 创建软链接
ln -s $oracle_home/bin/sqlplus /usr/bin

# 3.切换回oracle用户
su oracle

# 4. 登录sql plus
sqlplus /nolog
conn /as sysdba
## 4.1 修改system用户密码为system
alter user system identified by system;
## 4.2 修改sys用户密码为system
alter user sys identified by system;
## 4.3 新增一个测试用户(用户名:test,密码:test123);
create user test identified by test123;
## 4.4 将dba权限给内部管理员账号和密码
grant connect,resource,dba to sys_orm;
## 4.5 修改密码策略规则为:密码永不过期
alter profile default limit password_life_time unlimited;
## 4.6 修改数据库最大连接数;
alter system set processes=1000 scope=spfile;
## 4.7 最后重启数据库;
shutdown immediate;
startup;

# 5.退出
exit

5、安装成功,使用客户端工具连接

二、创建数据库用户与表空间

1、查询数据库文件位置

 select t1.name,t2.name  from v$tablespace t1,v$datafile t2  where t1.ts# = t2.ts#;

2、创建表空间

用sysdba登陆,sqlplus /@sysware as sysdba /plsql使用sysdba 登录执行

create tablespace orm
datafile '/home/oracle/app/oracle/oradata/helowin/orm.dbf' size 800m  	   --存储地址 初始大小800m
	autoextend on next 50m maxsize unlimited                   --每次扩展10m,无限制扩展
         extent management local autoallocate segment space management auto; 

3、创建用户

用sysdba登陆,sqlplus /@sysware as sysdba /plsql使用sysdba 登录执行

create user 用户名 identified by 密码 default tablespace 表空间名;  

create user orm identified by orm default tablespace orm;  

4、设置权限

用sysdba登陆,sqlplus /@sysware as sysdba /plsql使用sysdba 登录执行

grant connect,resource,create type,create view,recovery_catalog_owner to 用户名
--注意:禁止使用:imp_full_database权限

grant connect,resource,create type,create view,recovery_catalog_owner to orm;

三、导出数据库dmp

注意:导出需要记录用户名、表空间名,导入需要用到

1、上传文件到指定目录

docker cp  /home/imp e5w3hr4rrre3:/home/ormexp

2、创建权限目录

用sysdba登陆,
create directory 授权目录名 as '授权目录';   
grant read,write on directory 授权目录名 to 数据库用户名;

# 切换oracle用户:
su - oracle
# 管理员登录
sqlplus sys/system@orcl as sysdba

create directory ormexp as '/home/ormexp';   
grant read,write on directory ormexp to orm;

3、执行oracle-expdp导出

在cmd、用户窗口执行:

expdp 数据库用户名/数据库密码@sysware directory=授权目录名 dumpfile=数据文件名称.dmp

expdp orm/orm@orcl directory=ormexp dumpfile=data.dmp

四、导入oracle dmp文件

1、创建权限目录

用sysdba登陆,

create directory 授权目录名 as '授权目录';   
grant read,write on directory 授权目录名 to 数据库用户名;

# 切换oracle用户:
su - oracle
# 管理员登录
sqlplus sys/system@orcl as sysdba

create directory ormimp as '/home/ormimp';   
grant read,write on directory ormimp to orm;

2、导入oracle dmp文件

在cmd、用户窗口执行

impdp 数据库用户名/数据库密码 directory=授权目录名 remap_tablespace=导出数据库的表空间:表空间 dumpfile=数据文件名称.dmp remap_schema=导出数据库的用户名:数据库用户名 transform=oid:n

impdp orm/orm@orcl directory=impdata remap_tablespace=bluesys20240715:orm dumpfile=bluesys.dmp remap_schema=bluesys:orm transform=oid:n
impdp orm/orm directory=impdata remap_tablespace=bluesys20240715:orm dumpfile=bluesys.dmp remap_schema=bluesys:orm transform=oid:n

总结 

到此这篇关于docker安装oracle创建表空间并导入数据库的文章就介绍到这了,更多相关docker安装oracle创建表空间内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com