当前位置: 首页 > news >正文

docker 安装oracle

拉取镜像
拉取oracle_11g镜像

拉取oracle镜像(oracle 11.0.2 64bit 企业版 实例名: helowin)

Oracle主要在Docker基础上安装,安装环境注意空间和内存,Oracle是一个非常庞大的一个软件,

建议使用网易镜像或阿里镜像网站这里以oracle 11.0.2 64bit 企业版

实例名: helowin为例子进行安装详解。

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

运行容器

2.1 默认启动容器方式

docker run -d --name oracle11g -p 1521:1521 --restart=always registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g 


 

docker run -d -it -p 1521:1521 \
--name oracle11g \
--restart=always registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g 


2.2 持久化启动的方式

docker run -d -it -p 1521:1521 --name oracle11g --restart=always --mount source=oracle_vol,target=/home/oracle/app/oracle/oradata registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g


 

docker run -d -it -p 1521:1521 \
--name oracle11g \
--restart=always \
--mount source=oracle_vol,target=/home/oracle/app/oracle/oradata registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g


一般用默认启动方式就可以了,若是需要将数据保存到本地的采用持久化方式。

--mount表示要将Host上的路径挂载到容器中。

source=oracle_vol为Host的持久化卷,若未提前创建会自动创建,可通过

target=/home/oracle/app/oracle/oradata :自己Linux的家目录

docker volume inspect oracle_vol


查看volume的具体位置,target为容器中的路径


查看容器启动状态

docker ps | grep oracle11g 

 
进入oracle11g容器进行配置

docker exec -it oracle11g /bin/bash

 

切换到root用户下进行配置:

切换root用户:su root

输入密码: helowin ##可以使用passwd命令更改自己的密码

编辑profile文件配置ORACLE环境变量:

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  

保存后加载环境变量,立即生效:

source /etc/profile  


创建软连接:

作用:可以直接用oracle命令,而不需要进入bin目录中执行相应的命令。

ln -s $ORACLE_HOME/bin/sqlplus /usr/bin

 
切换到oracle 用户:

su - oracle 

 

登录sqlplus并修改sys、system用户密码:

sqlplus /nolog                                      # 登录oracle
conn /as sysdba                                     # 连接,需要进行操作系统验证,才可进行连接登录
alter user system identified by system;                        # 修改system用户账号密码system
alter user sys identified by sys;                              # 修改sys用户账号密码sys
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;      # 修改密码规则策略为密码永不过期
exit;                                                          # 退出

补充命令

登录sqlplus并修改sys、system用户密码: 需要注意的是再oracle用户下操作
sqlplus /nolog                                      # 登录
conn /as sysdba                                     # 连接
create user test identified by test;                #创建内部管理员账号密码;
grant connect,resource,dba to yan_test;             #将dba权限授权给内部管理员账号和密码;
alter system set processes=1000 scope=spfile;       #修改数据库最大连接数据;
修改以上信息后,需要重新启动数据库
shutdown immediate;                                 #关闭数据库
startup;                                            #启动数据库
SQL> select instance from v$thread;                 #查看数据库sid(实例名)
clear SCR  或clear screen或clea scre                 #sqlplus清屏命令
创建表空间
create tablespace pts datafile '/home/oracle/app/oracle/oradata/helowin/pts.dbf' size 100m autoextend on next 10m删除表空间
drop tablespace PTS;查看所有表空间
select tablespace_name from dba_tablespaces;创建用户
create user PTS identified by PTS default tablespace PTS;删除用户
drop user pts cascade;


 
为sys用户添加sysdba权限

SQL> grant sysdba to sys;


 
查看哪些用户被授予DBA权限

select * from dba_role_privs where granted_role='DBA';


查看数据库编码

SQL> select userenv('language') from dual;


查看数据库权限和用户

SQL> show parameter password         #查看数据库权限
SQL> select * from v$pwfile_users;   #查看用户

查看一下oracle实例状态:

lsnrctl status             -查看一下oracle实例状态:

监听命令

$ lsnrctl stop listener    -停止名为listener的监听服务
$ lsnrctl start listener   -启动名为listener的监听服务
$ lsnrctl reload listener  -重新加载名为listener的监听服务


查看环境变量

cat /home/oracle/.bash_profile


看到此ORACLE_SID=helowin表示数据库的实例名称

http://www.lryc.cn/news/192872.html

相关文章:

  • C++ vector 自定义排序规则(vector<vector<int>>、vector<pair<int,int>>)
  • 机器学习 Q-Learning
  • 产品设计心得体会 优漫动游
  • 前端--CSS
  • 实操指南|如何用 OpenTiny Vue 组件库从 Vue 2 升级到 Vue 3
  • 系统架构设计:15 论软件架构的生命周期
  • 金山wps golang面试题总结
  • 计算机视觉实战--直方图均衡化和自适应直方图均衡化
  • 501. 二叉搜索树中的众数
  • 【Linux】常用命令
  • 机器人制作开源方案 | 齿轮传动轴偏心轮摇杆简易四足
  • Windows中将tomcat以服务的形式安装,然后在服务进行启动管理
  • 解决ERROR: No query specified的错误以及\G 和 \g 的区别
  • mysql中SUBSTRING_INDEX函数用法详解
  • AndroidStudio报错:android.support.v4.app.Fragment
  • 今年这情况,还能不能选计算机了?
  • Elastic Cloud v.s. Zilliz Cloud:性能大比拼
  • 设计模式03———包装器模式 c#
  • 《动手学深度学习 Pytorch版》 8.3 语言模型和数据集
  • Linux桌面环境(桌面系统)
  • 【LeetCode刷题(数据结构)】:二叉树的前序遍历
  • 自定义Flink kafka连接器Decoding和Serialization格式
  • 推荐八个大学搜题软件和学习工具哪个好用且免费,一起对比看看
  • SpringBoot面试题1:什么是SpringBoot?为什么要用SpringBoot?
  • Django Test
  • Linux- 自定义一个ARP请求
  • C++下载器程序:如何使用cpprestsdk库下载www.ebay.com图片
  • java springboot通过EnableConfigurationProperties全局声明bean并处理装配
  • 网络工程师知识点2
  • Vue 绑定style和class