Study--Oracle-01-单实例部署Oracle11G-R2

2024-05-07 15:12

本文主要是介绍Study--Oracle-01-单实例部署Oracle11G-R2,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Oracle版本发布介绍

Oracle 19c和12c和11g功能区别_数据库_oracle_支持

一、CentOS 7 环境准备

1、软件准备

操作系统:CentOS  7

数据库版本: Oracle11g R2

2、操作系统环境配置

关闭selinux ,编辑 /etc/selinux/config文件,设置SELINUX= enforcing 为SELINUX=disabled

关闭防火墙

查看防火墙状态:systemctl status firewalld

停止防火墙:systemctl stop firewalld

关闭开机自启动防火墙服务:systemctl disable firewalld

安装Oracle 11g依赖包

注意:如果没有联网就设置本地YUM源,不建议使用rpm包安装,太麻烦了。

yum -y install gcc make binutils gcc-c++ compat-libstdc++-33 elfutils-libelf-devel elfutils-libelf-devel-static elfutils-libelf-devel ksh libaio libaio-devel numactl-devel sysstat unixODBC unixODBC-devel pcre-devel

添加oinstall 、dba 组,新建oracle用户并加入oinstall、dba组中;

注意:如果系统中存在,一定要删除重建

[root@oracle ~]# groupadd oinstall
[root@oracle ~]# groupadd dba
[root@oracle ~]# useradd -g oinstall -G dba oracle

[root@oracle ~]# passwd oracle

修改内核参数:编辑 /etc/sysctl.conf

[root@oracle ~]# cat  /etc/sysctl.conf | grep -v "#"
io-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 1073741824
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
[root@oracle ~]#sysctl -p 

 修改用户的限制文件,编辑 /etc/security/limits.conf

[root@oracle ~]# cat  /etc/security/limits.conf | grep ora
oracle           soft    nproc           20470
oracle           hard    nproc           16384
oracle           soft    nofile          10240
oracle           hard    nofile          65536
oracle           soft    stack           10240
[root@oracle ~]#

#注意生产环境建议更改大一点

/etc/security/limits.conf 详解与配置-CSDN博客

修改/etc/pam.d/login文件,添加:

session  required   /lib64/security/pam_limits.so
session  required   pam_limits.so

Linux系统的PAM模块认证文件含义说明总结-CSDN博客

修改/etc/profile文件:

[root@oracle ~]# vi /etc/profile

if [ $USER = "oracle" ]; then

  if [ $SHELL = "/bin/ksh" ]; then

   ulimit -p 16384

   ulimit -n 65536

  else

   ulimit -u 16384 -n 65536

  fi

fi

创建安装目录、修改文件权限

[root@oracle ~]# mkdir -p /u01/app/oracle/product/11.2.0
[root@oracle ~]# mkdir -p /u01/app/oracle/oradata
[root@oracle ~]# mkdir -p /u01/app/oracle/inventory
[root@oracle ~]# mkdir -p /u01/app/oracle/fast_recovery_area
[root@oracle ~]# chown -R oracle:oinstall /u01/app/oracle
[root@oracle ~]# chmod -R 775 /u01/app/oracle

修改tmpfs文件

避免发生ORA-00845: MEMORY_TARGET not supported on this system

[root@oracle ~]# cat  /etc/fstab | grep tmpfs
tmpfs                                    /dev/shm                 tmpfs   defaults,size=4G 0 0
重新挂载
 umount /dev/shm
 mount   /dev/shm
 查看修改后的大小
 df -h /dev/shm

linux下修改/dev/shm tmpfs文件系统大小_tmpfs 文件系统大小-CSDN博客ORA-00845: MEMORY_TARGET not supported on this system-CSDN博客

二、Oracle 11g 静默安装步骤

1、上传数据库软件,并解压

[root@oracle tmp]# ls -ld linux.x64_11gR2_database_*
-rw-r--r-- 1 root root 1239269270 May  3 07:35 linux.x64_11gR2_database_1of2.zip
-rw-r--r-- 1 root root 1111416131 May  3 07:34 linux.x64_11gR2_database_2of2.zip

[root@oracle tmp]# unzip linux.x64_11gR2_database_1of2.zip 
[root@oracle tmp]# unzip linux.x64_11gR2_database_2of2.zip 

[root@oracle tmp]# ls -dl database
drwxr-xr-x 8 root root 128 Aug 20  2009 database

2、切换到oracle用户,设置oracle用户环境变量

解决bash提示字符bash-4.2#的问题

-bash-4.1$ cp /etc/skel/.bash* ~         //拷贝文件至宿主目录下
bash-4.2#   source ~/.bashrc                   //利用source将配置文件内容读取至当前的shell环境

[oracle@oracle ~]$ cat  .bash_profile
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0
ORACLE_SID=orcl
PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH
[oracle@oracle ~]$ 

3、编辑静默安装响应文件

切换到root 用户进入oracle安装包解压后的目录

[root@oracle ~]# cd /tmp/database/response/ 
[root@oracle response]# cp db_install.rsp db_install.rsp.bak

[root@oracle response]# grep -v "#"  db_install.rsp | grep -v "^$"
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=oracle
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oracle/inventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/u01/app/oracle/product/11.2.0
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.isCustomInstall=false
oracle.install.db.customComponents=oracle.server:11.2.0.1.0,oracle.sysman.ccr:10.2.7.0.0,oracle.xdk:11.2.0.1.0,oracle.rdbms.oci:11.2.0.1.0,oracle.network:11.2.0.1.0,oracle.network.listener:11.2.0.1.0,oracle.rdbms:11.2.0.1.0,oracle.options:11.2.0.1.0,oracle.rdbms.partitioning:11.2.0.1.0,oracle.oraolap:11.2.0.1.0,oracle.rdbms.dm:11.2.0.1.0,oracle.rdbms.dv:11.2.0.1.0,orcle.rdbms.lbac:11.2.0.1.0,oracle.rdbms.rat:11.2.0.1.0
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=oinstall
oracle.install.db.CLUSTER_NODES=
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
oracle.install.db.config.starterdb.globalDBName=orcl
oracle.install.db.config.starterdb.SID=orcl
oracle.install.db.config.starterdb.characterSet=AL32UTF8
oracle.install.db.config.starterdb.memoryOption=true
oracle.install.db.config.starterdb.memoryLimit=1000
oracle.install.db.config.starterdb.installExampleSchemas=false
oracle.install.db.config.starterdb.enableSecuritySettings=true
oracle.install.db.config.starterdb.password.ALL=oracle
oracle.install.db.config.starterdb.password.SYS=
oracle.install.db.config.starterdb.password.SYSTEM=
oracle.install.db.config.starterdb.password.SYSMAN=
oracle.install.db.config.starterdb.password.DBSNMP=
oracle.install.db.config.starterdb.control=DB_CONTROL
oracle.install.db.config.starterdb.gridcontrol.gridControlServiceURL=
oracle.install.db.config.starterdb.dbcontrol.enableEmailNotification=false
oracle.install.db.config.starterdb.dbcontrol.emailAddress=
oracle.install.db.config.starterdb.dbcontrol.SMTPServer=
oracle.install.db.config.starterdb.automatedBackup.enable=false
oracle.install.db.config.starterdb.automatedBackup.osuid=
oracle.install.db.config.starterdb.automatedBackup.ospwd=
oracle.install.db.config.starterdb.storageType=FILE_SYSTEM_STORAGE
oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=
oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=
oracle.install.db.config.asm.diskGroup=
oracle.install.db.config.asm.ASMSNMPPassword=
MYORACLESUPPORT_USERNAME=
MYORACLESUPPORT_PASSWORD=
SECURITY_UPDATES_VIA_MYORACLESUPPORT=
DECLINE_SECURITY_UPDATES=true 
PROXY_HOST=
PROXY_PORT=
PROXY_USER=
PROXY_PWD=
[root@oracle response]# 

关键参数注解
oracle.install.option=INSTALL_DB_SWONLY  #安装选项
ORACLE_HOSTNAME=centos7    #命令hostname查看
UNIX_GROUP_NAME=oinstall    #主组
INVENTORY_LOCATION=/data/oraInventory
SELECTED_LANGUAGES=en,zh_CN 
ORACLE_HOME=/data/oracle/product/11.2.0/db_1
ORACLE_BASE=/data/oracle
oracle.install.db.InstallEdition=EE    #版本
oracle.install.db.isCustomInstall=true
oracle.install.db.DBA_GROUP=dba   #admin管理组名
oracle.install.db.OPER_GROUP=dba   #oper操作员组名
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
oracle.install.db.config.starterdb.SID=orcl
oracle.install.db.config.starterdb.memoryLimit=800      #根据自己设定的物理内存设置,一般为物理内存的40%-60%
oracle.install.db.config.starterdb.password.ALL=123456   #设置所有用户密码,方便后面更改。
DECLINE_SECURITY_UPDATES=true

4、根据修改的响应文件安装oracle 11g 

注意:执行安装前最好重启一下主机,检查环境变量及存储挂载情况

切换至oracle用户执行

[oracle@oracle database]$ ./runInstaller -silent -ignorePrereq -ignoreSysPrereqs -responseFile /tmp/database/response/db_install.rsp

检查安装日志文件,如出现 FATAL  字段证明安装有问题,需要解决

[root@oracle ~]# grep  FATAL   /u01/app/oracle/inventory/logs/installActions2024-05-06_04-44-20AM.log

出现如下内容,进行下一步操作,安装提示使用root用户执行脚本

检查日志

三、配置监听器

1、备份监听配置文件

[root@oracle response]# cd /tmp/database/response
[root@oracle response]# cp netca.rsp netca.rsp.bak

vi response/netca.rsp

#默认不用修改

INSTALL_TYPE=""typical""安装的类型
LISTENER_NUMBER=1监听器数量
LISTENER_NAMES={"LISTENER"}监听器的名称列表
LISTENER_PROTOCOLS={"TCP;1521"}监听器使用的通讯协议列表
LISTENER_START=""LISTENER""监听器启动的名称
 

2、切换Oracle用户下执行

[oracle@oracle database]$ $ORACLE_HOME/bin/netca /silent /responseFile /tmp/database/response/netca.rsp

出现下图情况时,则需要配置DISPLAY变量,配完之后重新netca

[oracle@oracle database]$ export DISPLAY=localhost:0.0

[oracle@oracle database]$ $ORACLE_HOME/bin/netca /silent /responseFile /tmp/database/response/netca.rsp
命令成功运行后,会在/u01/app/oracle/product/11.2.0/network/admin/ 中生成
listener.ora和sqlnet.ora两个文件。

[oracle@oracle admin]$  netstat -tnulp | grep 1521

四、建立新库,同时建立对应的实例

1、备份并修改 dbca.rsp文件2

 [root@oracle response]# cd /tmp/database/response/
 [root@oracle response]# cp dbca.rsp dbca.rsp.bak

[oracle@oracle response]$  grep -v "#" dbca.rsp | grep -v "^$"
[GENERAL]
RESPONSEFILE_VERSION = "11.2.0"
OPERATION_TYPE = "createDatabase"
[CREATEDATABASE]
GDBNAME = "orcl"
SID = "orcl"
TEMPLATENAME = "General_Purpose.dbc"
SYSPASSWORD = "oracle"
SYSTEMPASSWORD = "oracle"
SYSMANPASSWORD = "oracle"
DBSNMPPASSWORD = "oracle"
DATAFILEDESTINATION =/u01/app/oracle/oradata
RECOVERYAREADESTINATION=/u01/app/oracle/fast_recovery_area
CHARACTERSET = "AL32UTF8"
NATIONALCHARACTERSET= "UTF8"
TOTALMEMORY = "1000"
[createTemplateFromDB]
SOURCEDB = "myhost:1521:orcl"
SYSDBAUSERNAME = "system"
TEMPLATENAME = "My Copy TEMPLATE"
[createCloneTemplate]
SOURCEDB = "orcl"
TEMPLATENAME = "My Clone TEMPLATE"
[DELETEDATABASE]
SOURCEDB = "orcl"
[generateScripts]
TEMPLATENAME = "New Database"
GDBNAME = "orcl11.us.oracle.com"
[CONFIGUREDATABASE]
DBSNMPPASSWORD = "oracle"
[ADDINSTANCE]
DB_UNIQUE_NAME = "orcl11g.us.oracle.com"
NODELIST=
SYSDBAUSERNAME = "sys"
[DELETEINSTANCE]
DB_UNIQUE_NAME = "orcl11g.us.oracle.com"
INSTANCENAME = "orcl11g"
SYSDBAUSERNAME = "sys"
[oracle@oracle response]$ 

关键参数注解

[CREATEDATABASE]                    //仅修改此部分即可,可按照实际需求调整
GDBNAME="oadb.template"             //全局数据库的名字=SID+主机域名
SID="oadb"                          //SID
CHARACTERSET="AL32UTF8"             //编码
NATIONALCHARACTERSET="UTF8"         //编码 
DATAFILEDESTINATION=$ORACLE_BASE/oradata  //数据文件路径,默认为$ORACLE_BASE/oradata

 2、切换至oracle进行静默安装

 [oracle@oracle ~]$ dbca -silent -responseFile /tmp/database/response/dbca.rsp

五、完成建库后进行实例检查 

1、检查数据库进程

[oracle@oracle response]$ ps -ef | grep ora_ | grep -v grep

2、查看监听状态

[oracle@oracle response]$  lsnrctl status

3、登录数据库查看实例状态

[oracle@oracle ~]$ sqlplus / as sysdba

执行如下SQL查看数据库状态

-- 查看数据库版本

SQL>  select * from v$version;

--查看数据库实例状态

SQL> select status from v$instance;

--查数据库名称

SQL> select name as database from v$database;

-- 查看日志目录

SQL> SELECT value AS log_file_path
  2  FROM V$DIAG_INFO
  3  WHERE name like 'Diag%';

LOG_FILE_PATH
--------------------------------------------------------------------------------
TRUE
/u01/app/oracle/diag/rdbms/orcl/orcl/trace
/u01/app/oracle/diag/rdbms/orcl/orcl/alert
/u01/app/oracle/diag/rdbms/orcl/orcl/incident
/u01/app/oracle/diag/rdbms/orcl/orcl/cdump

SQL> 

-------------------------------------------------安装完成-----------------------------------------------

CentOS7安装Oracle完整教程(超级详细,亲测完美)-CSDN博客

https://jingyan.baidu.com/article/90895e0f29c92164ec6b0bd1.html

linux静默安装oracle11g数据库教程-CSDN博客

六、Oracle客户端

1、Oracle客户端介绍

【oracle】oracle客户端及oracle连接工具-CSDN博客2

2、Oracle SQL Developer 连接到 Oracle 

使用 Oracle SQL Developer 连接到 Oracle Cloud Infrastructure 上的 Microsoft SQL Server 数据库

下载对应的版本

3、安装登录

安装数据库使用sys用户登录,角色选择sysdba

 

这篇关于Study--Oracle-01-单实例部署Oracle11G-R2的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/967712

相关文章

Linux部署中的文件大小写问题的解决方案

《Linux部署中的文件大小写问题的解决方案》在本地开发环境(Windows/macOS)一切正常,但部署到Linux服务器后出现模块加载错误,核心原因是Linux文件系统严格区分大小写,所以本文给大... 目录问题背景解决方案配置要求问题背景在本地开发环境(Windows/MACOS)一切正常,但部署到

Java Stream流以及常用方法操作实例

《JavaStream流以及常用方法操作实例》Stream是对Java中集合的一种增强方式,使用它可以将集合的处理过程变得更加简洁、高效和易读,:本文主要介绍JavaStream流以及常用方法... 目录一、Stream流是什么?二、stream的操作2.1、stream流创建2.2、stream的使用2.

springboot项目中集成shiro+jwt完整实例代码

《springboot项目中集成shiro+jwt完整实例代码》本文详细介绍如何在项目中集成Shiro和JWT,实现用户登录校验、token携带及接口权限管理,涉及自定义Realm、ModularRe... 目录简介目的需要的jar集成过程1.配置shiro2.创建自定义Realm2.1 LoginReal

Python跨文件实例化、跨文件调用及导入库示例代码

《Python跨文件实例化、跨文件调用及导入库示例代码》在Python开发过程中,经常会遇到需要在一个工程中调用另一个工程的Python文件的情况,:本文主要介绍Python跨文件实例化、跨文件调... 目录1. 核心对比表格(完整汇总)1.1 自定义模块跨文件调用汇总表1.2 第三方库使用汇总表1.3 导

Oracle迁移PostgreSQL隐式类型转换配置指南

《Oracle迁移PostgreSQL隐式类型转换配置指南》Oracle迁移PostgreSQL时因类型差异易引发错误,需通过显式/隐式类型转换、转换关系管理及冲突处理解决,并配合验证测试确保数据一致... 目录一、问题背景二、解决方案1. 显式类型转换2. 隐式转换配置三、维护操作1. 转换关系管理2.

Oracle查询表结构建表语句索引等方式

《Oracle查询表结构建表语句索引等方式》使用USER_TAB_COLUMNS查询表结构可避免系统隐藏字段(如LISTUSER的CLOB与VARCHAR2同名字段),这些字段可能为dbms_lob.... 目录oracle查询表结构建表语句索引1.用“USER_TAB_COLUMNS”查询表结构2.用“a

Oracle数据库定时备份脚本方式(Linux)

《Oracle数据库定时备份脚本方式(Linux)》文章介绍Oracle数据库自动备份方案,包含主机备份传输与备机解压导入流程,强调需提前全量删除原库数据避免报错,并需配置无密传输、定时任务及验证脚本... 目录说明主机脚本备机上自动导库脚本整个自动备份oracle数据库的过程(建议全程用root用户)总结

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

MySQL多实例管理如何在一台主机上运行多个mysql

《MySQL多实例管理如何在一台主机上运行多个mysql》文章详解了在Linux主机上通过二进制方式安装MySQL多实例的步骤,涵盖端口配置、数据目录准备、初始化与启动流程,以及排错方法,适用于构建读... 目录一、什么是mysql多实例二、二进制方式安装MySQL1.获取二进制代码包2.安装基础依赖3.清

SpringBoot 异常处理/自定义格式校验的问题实例详解

《SpringBoot异常处理/自定义格式校验的问题实例详解》文章探讨SpringBoot中自定义注解校验问题,区分参数级与类级约束触发的异常类型,建议通过@RestControllerAdvice... 目录1. 问题简要描述2. 异常触发1) 参数级别约束2) 类级别约束3. 异常处理1) 字段级别约束