Linux下创建Oracle数据库的实例

1.安装前准备

1.1.安装前准备一

安装前准备信息
数据库版本:Oracle19.16.0.0.0
Linux版本:Red Hat Enterprise Linux Server release 7.9 (Maipo)
主机名:ace-test-84
IP:10.10.10.212
SID:dcpfareint
service_name:dcpfarei
数据库使用字符集:这里用AL32UTF8 字符集

 

1.2.安装前准备二

1.2.1.创建用户组
-- 创建用户组
[root@ace-test-84 ~]$ groupadd -g 5001 oinstall
[root@ace-test-84 ~]$ groupadd -g 5002 dba
1.2.2.删除用户组(拓展)
-- 删除用户组
[root@ace-test-84 ~]$ groupdel test
-- 如果组里面有用户需要先删除用户或移动用户,才能删除组
[root@ace-test-84 ~]$  userdel test ###删除用户
1.2.3.创建oracle用户
#创建oracle用户—编号为6001,默认组为oinstall ,并添加到dba组,主要是oinstall组发生作用
[root@ace-test-84 ~]$  useradd -u 6001 -g oinstall -G dba oracle
1.2.4.修改oracle得密码
# passwd oracle ----设置oracle用户密码(Zyl@0411)[root@ace-test-84 ~]$ passwd oracle
Changing password for user oracle.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
1.2.5. 检查创建的oracle用户
#检查创建的oracle用户
[root@ace-test-84 ~]$  su - oracle
[oracle@ace-test-84 ~]$ id
uid=6001(oracle) gid=5001(oinstall) groups=5001(oinstall),5002(dba)
[oracle@ace-test-84 ~]$ 

2.查看环境

[oracle@ace-test-84 ~]$ cat .bash_profile
# .bash_profile# Get the aliases and functions
if [ -f ~/.bashrc ]; then. ~/.bashrc
fi# User specific environment and startup programsPATH=$PATH:$HOME/.local/bin:$HOME/binexport PATHexport TMP=/tmp
export TMPDIR=$TMP
export ORACLE_SID=tstttdp1
export ORACLE_BASE=/oracle/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.3.0/db_1
export PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
stty erase ^H
[oracle@ace-test-84 ~]$ echo $ORACLE_HOME
/oracle/app/oracle/product/19.3.0/db_1[oracle@ace-test-84 ~]$ echo $ORACLE_BASE
/oracle/app/oracle
[oracle@ace-test-84 ~]$ 

3.创建新的实例名

首先设置要创建的ORACLE的SID

[oracle@ace-test-84 ~]$ export ORACLE_SID=dcpfareint

4.创建初始化文件

cd $ORACLE_HOME/dbs目录下

命名方法:init+实例名.ora 本例中initdcpfareint

[oracle@ace-test-84 ~]$ cd $ORACLE_HOME/dbs
[oracle@ace-test-84 dbs]$ vi initdcpfareint.ora# 添加如下内容:
dcpfareint.__data_transfer_cache_size=0
dcpfareint.__db_cache_size=72209137664
dcpfareint.__inmemory_ext_roarea=0
dcpfareint.__inmemory_ext_rwarea=0
dcpfareint.__java_pool_size=1879048192
dcpfareint.__large_pool_size=1342177280
dcpfareint.__oracle_base='/oracle/app/oracle'#ORACLE_BASE set from environment
dcpfareint.__pga_aggregate_target=10737418240
dcpfareint.__sga_target=85899345920
dcpfareint.__shared_io_pool_size=268435456
dcpfareint.__shared_pool_size=9395240960
dcpfareint.__streams_pool_size=536870912
dcpfareint.__unified_pga_pool_size=0
*.audit_file_dest='/oracle/app/oracle/admin/dcpfareint/adump'
*.audit_trail='db'
*.compatible='19.0.0'
*.control_files='/oracle/app/oracle/oradata/TSDCPFAREINT/controle/control01.ctl','/oracle/app/oracle/fast_recovery_area/DCPFAREINT/control02.ctl'
*.db_block_size=8192
*.db_name='dcpfareint'
*.db_recovery_file_dest='/oracle/app/oracle/fast_recovery_area'
*.db_recovery_file_dest_size=107374182400
*.diagnostic_dest='/oracle/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=dcpfareintXDB)'
*.local_listener='LISTENER_DCPFAREINT'
*.nls_language='AMERICAN'
*.nls_territory='AMERICA'
*.open_cursors=300
*.pga_aggregate_target=10g
*.processes=10000
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=80g
*.undo_tablespace='UNDOTBS1'

注意:
1.不要用原来的<ORACLE_BASE>作为路径,修改为对应的绝对路径,否则会报错

2.注意control_files 应该是新的文件,否则会报文件已存在的错误

5.创建密码文件

orapwd file=$ORACLE_HOME/dbs/orapw+实例名 password=sys的密码 entries=16 force=y

[oracle@ace-test-84 ~]$ orapwd file=$ORACLE_HOME/dbs/orapwdcpfareint password=AFuwd7_@5K entries=16 force=y

 6.创建相应的目录

[oracle@ace-test-84 ~]$ mkdir -p /oracle/app/oracle/oradata/ORCL/controle
[oracle@ace-test-84 ~]$ mkdir -p /oracle/app/oracle/oradata/ORCL/dataFile
[oracle@ace-test-84 ~]$ mkdir -p /oracle/app/oracle/oradata/ORCL/redoLog

7.启动新建实例的数据库状态为nomount

切换到新建的实例下面,然后使用数据库的静态文件启动数据库到nomount状态

注意:

使用静态文件启动的nomount状态前,需要先创建审计目录

执行:STARTUP NOMOUNT PFILE= '/oracle/app/oracle/product/19.3.0/db_1/dbs/initdcpfareint.ora'; 前,

需要先创建下面的路径才行,不然报错
mkdir -p /oracle/app/oracle/admin/dcpfareint/adump

7.1.创建审计目录

[oracle@ace-test-84 ~]$ mkdir -p /oracle/app/oracle/admin/dcpfareint/adump

7.2.切换到新建的实例环境下,然后使用静态文件启动到nomount状态下 

[oracle@ace-test-84 ~]$ export ORACLE_SID=dcpfareint
[oracle@ace-test-84 ~]$ sqlplus / as sysdbaSQL*Plus: Release 19.0.0.0.0 - Production on Wed Jun 26 15:34:05 2024
Version 19.16.0.0.0Copyright (c) 1982, 2022, Oracle.  All rights reserved.Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.16.0.0.0SQL> STARTUP NOMOUNT PFILE= '/oracle/app/oracle/product/19.3.0/db_1/dbs/initdcpfareint.ora';
ORACLE instance started.Total System Global Area 8.5899E+10 bytes
Fixed Size                 37219408 bytes
Variable Size            1.3153E+10 bytes
Database Buffers         7.2478E+10 bytes
Redo Buffers              231215104 bytes
SQL> 

7.3.在nomount状态下,创建数据库的动态启动文件

# 在nomount状态下,创建数据库的动态启动文件
SQL> CREATE SPFILE = '/oracle/app/oracle/product/19.3.0/db_1/dbs/spfiledcpfareint.ora' FROM PFILE = '/oracle/app/oracle/product/19.3.0/db_1/dbs/initdcpfareint.ora';

7.4.关闭数据库,重启数据库到nomount状态下

# 在上面启动到nomount的情况下,关闭数据库
SQL> shutdown immediate# 重启数据库,使用动态启动文件
[oracle@ace-test-84 ~]$ export ORACLE_SID=tstttdp1
[oracle@ace-test-84 ~]$ sqlplus / as sysdbaSQL*Plus: Release 19.0.0.0.0 - Production on Wed Jun 26 15:34:05 2024
Version 19.16.0.0.0Copyright (c) 1982, 2022, Oracle.  All rights reserved.Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.16.0.0.0SQL> startup nomount
ORACLE instance started.Total System Global Area 8.5899E+10 bytes
Fixed Size                 37219408 bytes
Variable Size            1.3153E+10 bytes
Database Buffers         7.2478E+10 bytes
Redo Buffers              231215104 bytes
SQL> 

8.在nomount状态下,创建数据库

在上面使用动态文件重启到nomount的情况下,创建数据库

SQL> create database dcpfareiuser sys identified by oracleuser system identified by oraclelogfile group 1 ('/oracle/app/oracle/oradata/TSDCPFAREINT/redoLog/redo01.log') size 100M,group 2 ('/oracle/app/oracle/oradata/TSDCPFAREINT/redoLog/redo02.log') size 100M,group 3 ('/oracle/app/oracle/oradata/TSDCPFAREINT/redoLog/redo03.log') size 100Mmaxlogfiles 10maxlogmembers 4maxloghistory 5maxdatafiles 100maxinstances 1character set AL32UTF8national character set AL16UTF16datafile '/oracle/app/oracle/oradata/TSDCPFAREINT/dataFile/system.dbf' size 16gsysaux datafile '/oracle/app/oracle/oradata/TSDCPFAREINT/dataFile/sysaux.dbf' size 16gdefault temporary tablespace temp tempfile '/oracle/app/oracle/oradata/TSDCPFAREINT/dataFile/temp.dbf' size 10gundo tablespace UNDOTBS1 datafile '/oracle/app/oracle/oradata/TSDCPFAREINT/dataFile/undotbs.dbf' size 10G;

9.执行建库和数据字典脚本(nomount下执行)

9.1.执行下面的命令

执行下面命令:
SQL> @?/rdbms/admin/catalog.sql;   --创建数据库的统计视图,审计视图
SQL> @?/rdbms/admin/catproc.sql;   -- 数据库具有pl/sql的使用功能。    生成同义词典表与相应视图的架构表(最重要的,建库必须运行的) 
SQL> @?/rdbms/admin/catexp.sql;    --数据库具有导入导出功能,即可以使用exp、imp、expdp、impdp
SQL> @?/rdbms/admin/utlrp.sql      --编译
SQL> @?/sqlplus/admin/pupbld.sql   --system运行
SQL> @?/rdbms/admin/cataudit.sql   --创建审计数据字典视图@?/rdbms/admin/catjobq.sql        --创建关于job的视图
@?/rdbms/admin/dbmsutil.sql       --针对的是DBMS_SYSTEM            GRANT EXECUTE ON DBMS_SYSTEM TO username;@?/rdbms/admin/utlsampl.sql    --生成一个系统事例默认的用户名与密码(用户名为scott密码为tiger)从oracle7开始一直就有了。

 9.2.打开数据库

SQL> ALTER DATABASE MOUNT;
SQL> ALTER DATABASE OPEN;

10.修改监听配置文件listener.ora

到$ORACLE_HOME/network/admin目录下:vi listener.ora

LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = ace-test-84)(PORT = 1521))(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))))

11.修改配置tns文件

到$ORACLE_HOME/network/admin目录下:vi tnsnames.ora

LISTENER_DCPFAREI =(ADDRESS = (PROTOCOL = TCP)(HOST = ace-test-84)(PORT = 1521))TSTTTDP1 =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = ace-test-84)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = tstttdp1)))

DCPFAREI =                 ---这个名字随便
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = ace-test-84)(PORT = 1521)) -- IP地址,如果使用hostname的话,需要在/etc/hosts 添加 10.10.10.212   ace-test-84
    (CONNECT_DATA =
      (SERVER = DEDICATED)  ---连接方式,这里是专用
      (SERVICE_NAME = dcpfarei) -- 服务名
    )
  )

12.配置好tns后,数据库启动监听的时候,监听不到新建的服务,需要执行下面的操作

注册动态监听
SQL> alter system set LOCAL_LISTENER='(ADDRESS=(PROTOCOL=TCP)(HOST=10.211.129.51)(PORT=1521))' sid='dcpfareint';System altered.
SQL> alter system register;System altered.

执行上面的操作后,动态参数的变化:
vi spfiledcpfareint.ora 


执行前
*.local_listener='LISTENER_DCPFAREINT'

执行后:
*.local_listener='LISTENER_DCPFAREINT'
dcpfareint.local_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=10.10.10.212)(PORT=1521))'

13.启动监听

-- 启动监听
[oracle@ace-test-84 ~]$ lsnrctl start
-- 查看监听的状态
[oracle@ace-test-84 ~]$ lsnrctl status
-- 停止监听
[oracle@ace-test-84 ~]$ lsnrctl stop
-- 重启监听
[oracle@ace-test-84 ~]$ lsnrctl reload

14.启停实例

[oracle@ace-test-84 ~]$ export ORACLE_SID=dcpfareint
[oracle@ace-test-84 ~]$ sqlplus / as sysdbaSQL*Plus: Release 19.0.0.0.0 - Production on Wed Jun 26 16:34:32 2024
Version 19.16.0.0.0Copyright (c) 1982, 2022, Oracle.  All rights reserved.Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.16.0.0.0SQL> # 启动数据库
SQL> startup# 关闭数据库
SQL> shutdown immediate

 

至此,Linux新建实例结束

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/861903.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

电机应用相关名词介绍

1.电机转速 定义&#xff1a;电机转速指电机工作时旋转的速度&#xff0c;是衡量电机性能的重要指标之一。 单位&#xff1a; 每分钟转数&#xff08;RPM&#xff09;&#xff1a;即Revolutions Per Minute&#xff0c;表示电机每分钟旋转的圈数。 每秒转数&#xff08;RPS…

【小工具】Unity批量删除物体上引用丢失的脚本

介绍 Unity批量删除物体上引用丢失的脚本 使用场景 当在外部导入资源时会造成物体上挂载的脚本引用丢失&#xff0c;一个个删除比较麻烦&#xff0c;可以借用这个工具快速实现 工具原理 继承EditorWindow绘制一个自定义的编辑器窗口 加载Assets目录下所有预制体 获取其所有…

畜牧机械5G智能制造工厂物联数字孪生平台,推进制造业数字化转型

畜牧机械5G智能制造工厂物联数字孪生平台&#xff0c;推进制造业数字化转型。畜牧机械5G智能制造工厂物联数字孪生平台&#xff0c;是近年来制造业数字化转型的杰出代表。工业物联数字孪生平台平台集成了物联网、大数据、云计算和人工智能等先进技术&#xff0c;通过高速、低延…

elk对于集群实例的日志的整合-基于filebeat+k8s采集日志

说明&#xff1a;基于filebeat采集日志 概述&#xff1a; 在Kubernetes环境中&#xff0c;Filebeat不需要和业务服务部署在同一个容器中。通常的做法是将Filebeat作为一个DaemonSet部署在集群中&#xff0c;这样它可以在每个节点上运行一个实例&#xff0c;并从所有容器中收集…

Ubuntu下TensorRT与trtexec工具的安装

新版&#xff08;这里测试的是10.1版&#xff09;的onnx转tensorrt engine工具trtexec已经集成在TensorRT中&#xff0c;不需要额外单独安装。 教程来源于此网页&#xff1a;https://medium.com/moshiur.faisal01/install-tensorrt-with-command-line-wrapper-trtexec-on-unun…

redis需要知道的点

目录 一、为什么要用缓存 二、使用 Redis有哪些好处 三、什么是 redis&#xff1f; 四、redis和memcached区别 五、为什么redis单线程模型效率也能那么高 六、redis的线程模型 七、redis 6.0 引入多线程 八、为什么Redis需要把所有数据放到内存中&#xff1f; 九、Red…

cad由于找不到mfc140u.dll的解决方法,彻底解决mfc140u.dll丢失问题

在计算机辅助设计&#xff08;CAD&#xff09;的时候&#xff0c;我们可能会遇到各种错误和问题。其中&#xff0c;“CAD由于找不到mfc140u.dll&#xff0c;无法继续执行代码”的错误提示。这个问题可能会导致CAD无法启动运行&#xff0c;因此&#xff0c;我希望通过分享我的经…

site 搜索技巧 指定网站 屏蔽网站

指定某网站内容&#xff1a;site:xxx 屏蔽某网站内容&#xff1a;-site:xxx 例如&#xff1a;搜 springboot项目demo&#xff0c;你想只搜csdn&#xff0c;屏蔽掉博客园&#xff0c;51cto&#xff0c;等&#xff0c;在输入框中输入如下&#xff1a; springboot项目demo site:c…

基于elastic stack搭建的ELK系统资源占用预估

1、ES 1.1 内存&#xff1a;ES非常消耗内存&#xff0c;不是JVM用到的内存,而是机器的物理内存,ES在运行期间对JVM Heap(堆内存)的需求较小 实践建议: 数据量过百万,建议单台服务器的内存至少要有16GB;数据量过亿,建议单台服务器的内存至少要有64GB 1.2 CPU&#xff1a;ES集…

计算机网络之数据通信原理(下)

上一讲内容&#xff1a;数据传输方式、数据传输形式、传输差错处理、常用差错检测方法 数据通信过程中&#xff0c;一个很重要的问题就是如何控制数据的传输&#xff0c;就涉及到了传输控制规程&#xff08;协议&#xff09; 下面介绍两种&#xff1a; ①BSC&#xff1a;面向…

鸿蒙 HarmonyOS NEXT星河版APP应用开发-阶段一

一、鸿蒙开发环境搭建 DevEco Studio安装 下载 访问官网&#xff1a;https://developer.huawei.com/consumer/cn/deveco-studio/选择操作系统版本后并注册登录华为账号既可下载安装包 安装 建议&#xff1a;软件和依赖安装目录不要使用中文字符软件安装包下载完成后&#xff0…

GGUF模型转换入门

一、定义 1 定义 2 案例 二、实现 定义 GGUF是一种大模型文件格式&#xff0c;由开发者Georgi Gerganov提出。 这是一种针对大规模机器学习模型设计的二进制格式文件规范。它的主要优势在于能够将原始的大模型预训练结果经过特定优化后转换成这种格式&#xff0c;从而可以更…

鸿蒙Harmony开发实战案例:使用OpenGL绘制3D图形

XComponent控件常用于相机预览流的显示和游戏画面的绘制,在OpenHarmony上&#xff0c;可以配合Native Window创建OpenGL开发环境&#xff0c;并最终将OpenGL绘制的图形显示到XComponent控件。本文将采用"Native C"模板&#xff0c;调用OpenGL ES图形库绘制3D图形&…

python之__call__函数介绍

Python 中的 __call__ 方法是一种特殊的方法,它允许对象像函数一样被调用。当你创建一个对象并使用括号 () 调用它时,Python 会自动调用这个对象的 __call__ 方法。 1. 基本用法 下面是一个简单的例子: class MyClass:def __init__(self, value):self.value valued…

yaml文件的介绍-K8S

yaml 文件是我们使用K8S管理应用程序常用的部署方式&#xff0c;它主要是通过一系列键值对组成&#xff0c;键和值使用冒号和空格分隔。以下是对yaml的介绍 首先我们可以使用命令生成一个简单的YAML模版文件 Kubectl run nginx-pod –imagenginx:latest –port80 –dry-runcli…

使用FRP 0.58版本进行内网穿透的详细教程

什么是FRP&#xff1f; FRP&#xff08;Fast Reverse Proxy&#xff09;是一款高性能的反向代理应用&#xff0c;主要用于内网穿透。通过FRP&#xff0c;您可以将内网服务暴露给外网用户&#xff0c;无需进行复杂的网络配置。 准备工作 服务器&#xff1a;一台具备公网IP的服…

CSS基础学习记录(6)

目录 1、从最基本的页面开始 2、添加图像/浮层部分 3、位置调整 4、添加动效 4.1、添加浮层动效 4.2、添加背景动画 根据前面css的学习&#xff0c;本篇来实践下前面学习的知识&#xff0c;主要实现如下这样的效果。 下面我们一步步实现上面的效果。 1、从最基本的页面开…

Redis 缓存问题及解决

所有问题解决的关键就是尽少的访问数据库&#xff0c;或者避免太集中的访问。 一&#xff0c;缓存穿透&#xff08;key在数据库不存在&#xff09; 当数据既不在缓存中&#xff0c;也不在数据库中&#xff0c;导致请求访问缓存没数据&#xff0c;访问数据库也没数据&#xff0c…

理解java AWT中的FlowLayout的使用

目录 背景: 代码示例: 代码详细解析: 总结: 背景: 在java的AWT(Abstract Window Toolkit)库中&#xff0c;Frame和FlowLayout是两个常用的类&#xff0c;它们分别用于创建窗口和设置窗口内组件的布局&#xff0c;下面的代码示例&#xff0c;解释Frame和FlowLayout的基本用…

【LeetCode】八、堆的使用:第K个最大元素 + 前K和高频单词

文章目录 1、Java中的堆结构2、leetcode215&#xff1a;数组中的第K个最大元素3、leetcode692&#xff1a;前K个高频单词 1、Java中的堆结构 PriorityQueue类取堆顶元素删除堆顶元素堆的元素个数遍历堆 2、leetcode215&#xff1a;数组中的第K个最大元素 这题应该快排来解&…