首页 > 数据库 >docker 安装 Oracle_12c

docker 安装 Oracle_12c

时间:2024-04-28 15:24:05浏览次数:21  
标签:12c 修改 -- system oracle 12.2 Oracle docker

最近做一个功能,需要连接:mysql、mssql、oracle,开发语言是nodejs,框架是nestjs框架,orm使用的typeorm,package包括:

"oracledb": "^6.4.0"
"mssql": "^10.0.2"
"mysql2": "^3.9.7"

公司没有mysql及oracle数据库,所以我在自己的云上用docker安装下,测试下。mysql还行,但是这个oracle真是太大了....我小小服务器整不住了,所以我只能按需买了一个12v12G的(其实不用这么高,4G就行,12运行起来内存占用2G多一点)

1、CentOS7.9安装好docker

2、docker安装Oracle_12c

# 拉取镜像
docker pull registry.cn-hangzhou.aliyuncs.com/lhrbest/oracle_12cr2_ee_lhr_12.2.0.1:2.0
# 启动docker,这里就是基本参数,设置网络、开机启动啥的多余的都删掉了,自己根据需求来吧
docker run -itd --name oracle12c -p 1521:1521 -p 2222:22 -p 5500:5500 -p 5501:5501 registry.cn-hangzhou.aliyuncs.com/lhrbest/oracle_12cr2_ee_lhr_12.2.0.1:2.0 init

 3、配置Oracle

3.1 进入容器

# 进入容器
docker exec -it oracle12c bash

 3.2 修改环境变量

# 修改环境变量(i 插入 :w 保存 :q 离开)
vi /etc/profile
# 在文件最下面增加以下三行
export ORACLE_HOME=/u01/app/oracle/product/12.2.0.1/dbhome_1/
export ORACLE_SID=lhrcdb1
export PATH=$ORACLE_HOME/bin:$PATH

然后执行

source /etc/profile

3.3 切换用户

su oracle
sqlplus /nolog
conn /as sysdba
#启动数据库
startup

 3.4 启动监听

在上面步骤完成后,键入 exit 然后输入启动监听命令

lsnrctl start

3.5 修改帐号密码

这些根据需要来就行,我就用的系统system帐号,没有创建帐号

alter user system identified by system;--修改system用户账号密码;
alter user sys identified by system;--修改sys用户账号密码;

create user user1 identified by user1; --创建内部管理员账号密码;
grant connect,resource,dba to user1; --将dba权限授权给内部管理员账号和密码;
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED; --修改密码规则策略为密码永不过期;
alter system set processes=1000 scope=spfile; --修改数据库最大连接数据;

3.6 查看db的service_name

这个在连接的时候会用到,我们可能不知道,所以可以查询下

show parameter service_name

4、操作截图

5. DBeaver连接截图

5、问题记录

过程中在【启动监听】的时候提示以下错误,其实能看出来是HOST名字错误这个需要是你的计算机名字,我这块改成了0.0.0.0,因为是测试环境,无所谓。

 打开监听配置文件并进行修改,然后就可以了。

vi  /u01/app/oracle/product/12.2.0.1/dbhome_1/network/admin/listener.ora

 

标签:12c,修改,--,system,oracle,12.2,Oracle,docker
From: https://www.cnblogs.com/PrintY/p/18163777

相关文章

  • Docker安装笔记
    1、配置yum仓库(系统为Centos7)创建Centos基础镜像仓库,到阿里云镜像站https://developer.aliyun.com/mirror/找到Centos可以找到对应系统的镜像仓库。wget-O/etc/yum.repos.d/CentOS-Base.repohttps://mirrors.aliyun.com/repo/Centos-7.repo2、配置docker仓库创建Docker镜......
  • 使用 Docker 部署 moments 微信朋友圈
    1)项目介绍GitHub:https://github.com/kingwrcy/moments今天给大家分享一个类似微信朋友圈的项目moments,适合用于记录生活。2)项目特色支持匿名评论/点赞支持引入网易云音乐,b站视频,插入链接等支持自定义头图,个人头像,网站标题等支持上传图片到S3兼容的云存储,支持本地存......
  • docker清理数据,节约磁盘
    列出所有镜像dockerimagesdockerrmi镜像id若报错dockerrmi-f镜像id清理所有无用镜像:该命令会删除所有不再使用的镜像,释放系统空间。dockerimageprune清理所有无用镜像和容器:如果您还想一并清理不再使用的容器,可以使用以下命令:此命令慎用,会将所有的image和容器......
  • Docker安装RocketMQ
    https://blog.csdn.net/qq_43600166/article/details/136187969 前提条件需要安装dockerhttps://yeasy.gitbook.io/docker_practice/install/centos NameServer1.拉取容器dockerpullrocketmqinc/rocketmq2.创建NameServer容器创建一个新的容器并指定RocketMQ的镜像......
  • oracle 查看日志
    查看日志SELECT*FROMv$diag_alert_ext  使用SQL*Plus连接到Oracle数据库。运行以下命令来查看当前会话的日志记录:SELECTusername,os_username,machine,sql_textFROMv$sessionWHEREusernameISNOTNULL;复制代码这将显示当前所有活动会话的用户名、操作系统用户名、......
  • RabbitMQ docker集群 多机器部署
    参考参考https://blog.csdn.net/m0_47214030/article/details/131358298 ipporthostname192.168.2.2016041node1192.168.2.2026041node2192.168.2.2036041node31、启动三个RabbitMQ容器 新版本已经不建议通过环境变......
  • DockerFile
    FROMcentos:7MAINTAINERzhangsan<[email protected]>ENVMYPATH/usr/localWORKDIR$MYPATHRUNyum-yinstallvimRUNyum-yinstallnet-toolsEXPOSE80CMDecho$MYPATHCMDecho"----end----"CMD/bin/bashDockerFile文件教学连接单阶段构建例子FROM......
  • Oracle-无备份情况下,如何手动恢复控制文件
    1.测试场景本文主要模拟在控制文件没有备份的情况下丢失,如何根据已有的参数文件、数据文件、在线日志信息去手动生成控制文件。2.测试环境Oracle单实例:11.2.0.4数据文件目录:/u01/app/oracle/oradata/HJDB/datafile在线日志目录:/u01/app/oracle/oradata/HJDB/onlinelog3.创建......
  • Oracle 小计-汇总处理
    假设我们有一个名为employees的表,它包含部门(department)、员工姓名(employee)和工资(salary)CREATETABLEemployees(departmentVARCHAR2(50),employeeVARCHAR2(50),salaryNUMBER(10,2));初始化数据INSERTINTOemployees(department,employee,salary)VAL......
  • oracle集合
    并集(UNION)用于合并两个或多个SELECT语句的结果集SELECTcolumn_name(s)FROMtable1UNIONALLSELECTcolumn_name(s)FROMtable2;交集(INTERSECT)返回两个或多个查询结果集中都存在的行SELECTcolumn_name(s)FROMtable1INTERSECTSELECTcolumn_name(s)FROMtable2......