(2)Oracle数据库容器搭建步骤
1.拉取oracle镜像(在此步骤前先安装docker):
#如果是首次拉取镜像,需要登录账号进行授权
docker login ?(输入账号密码:linwukui/lin123456)
提示登录成功后即可正常拉取镜像
#拉取oracle镜像,如果不知道镜像名可以先进行搜素
docker search oracle
Docker pull oracleinanutshell/oracle-xe-11g
2.拉取成功后可以查看本地镜像:
docker images
#可以根据自己的需要对镜像进行更名和修改tag标签
docker tag ad13c30ec346 new_name:new_tag
3.启动容器:
普通启动:
docker run -d -p 1521:1521 --name=容器名称 --restart=always 镜像ID
数据卷挂载(加-v参数即可):
Eg:docker run -d -p 1521:1521 -v 本机目录:容器内目录 --name=容器名称 --restart=always 镜像ID
#因车辆实物ID系统属于迁移,同时容器内oracle目录是/u01/,所以可以将需要迁移的数据放到本机/u01/目录下
具体操作流程如下(oracle数据持久化):
(1)先启动容器,挂载本地两个目录,分别是/u01和/home:
docker run -d -p 1521:1521 -v /u01:/u01 -v /home:/home --name=oracle --restart=always 镜像ID
(2)查看oracle容器是否正常启动:
docker ps|grep oracle
(3)将迁移的数据/u01目录下的所有文件拷贝到本机/u01目录下:
此时在oracle容器内部也会存在:
进入oracle容器:
docker exec -it 9c3f865bfda7 /bin/bash
切换到oracle账户:
su oracle
所有准备工作全部完成:
(4)以sysdba管理员进入oracle数据库:
sqlplus / as sysdba
查看用户:
(5)navicate连接oracle数据库:
连接信息:
选择角色:
sysdba角色权限较高,可以使用数据泵操作;
点击测试连接:
连接成功即可
注意:如果oracle容器数据库出现问题,保留好/u01/app即可(持久化,数据不会丢失)
----------------------------------------------------------------------------------------------------------------------
番外篇:oralce启动后初始操作(新,不需要使用老的数据)
1.启动oracle容器并挂载本机路径:
docker run -d -p 1521:1521 -v /home:/home --name=oracle xxx
2.进入容器:
docker exec -it xxx /bin/bash
记得切换oracle用户:su oracle
3.创建账号:
(1)system账号登录:
sqlplus /nolog ?//sqlplus控制台
sqlplus / as sysdba; ?//系统管理员,权限较高
sqlplus system/oracle
创建用户UVMP_USER:
CREATE USER UVMP_USER IDENTIFIED BY "UVMP_USER";
授权:
GRANT CONNECT,RESOURCE,DBA,SYSDBA TO UVMP_USER;//授权完成后可以在navicate连接时选择sysdba角色
//需要 sqlplus / as sysdba;
GRANT SYSDBA TO UVMP_USER;
此时可尝试使用sysdba角色连接
查看服务名:
show parameter service_name;
修改服务名:
alter system set service_names='orcl' scope=both;
修改配置文件:
vim listener.ora
(SID_DESC=
(GLOBAL_DBNAME=ORCL)
(ORACLE_HOME=e:\ORALE10G)
(SID_NAME=ORALE))
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!