CentOS7部署Oracle19c

一、环境配置

  CentOS 7.9

  Oracle 19c

二、下载oracle19c

  官网下载: https://www.oracle.com/database/technologies/oracle-database-software-downloads.html#db_ee

  选择下列图片的版本。

 

三、关闭防火墙和SELinux

进入root用户,进行配置。

systemctl stop firewalld
systemctl disable firewalld
systemctl status firewalld

 

检查防火墙处于关闭状态即可。

 配置selinux的config文件,设置 SELINUX=disabled即可。

vi /etc/selinux/config

 

 

四、下载所需的包

yum install -y binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel \
glibc glibc-common glibc-devel libaio libaio-devel libgcc libstdc++ libstdc++-devel \
make sysstat unixODBC unixODBC-devel

 

五、添加oracle用户组

进入root用户,进行设置。

groupadd -g 54321 oinstall
groupadd -g 54322 dba
useradd -u 54321 -g oinstall -G dba oracle
echo "oracle" | passwd --stdin oracle

 

六、配置内核参数

可以直接添加到 /etc/sysctl.conf文件中,也可以vi打开配置,进行配置。

cat >> /etc/sysctl.conf << EOF
fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
kernel.shmall = 1073741824
kernel.shmmax = 4398046511104
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
EOF

最后重新加载配置文件。

sysctl -p

 

七、配置用户资源限制

cat >> /etc/security/limits.conf << EOF
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240

EOF

 

八、创建目录并修改权限

进入root用户,进行设置。

mkdir -p /u01/app/oracle/product/19.0.0/dbhome_1
chown -R oracle:oinstall /u01
chmod -R 775 /u01

 

九、配置oracle用户环境变量

# 执行(切换至oracle用户)
su - oracle
# 环境变量
vi ~/.bash_profile
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS'
export ORACLE_SID=orcl
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.0.0/dbhome_1
export PATH=$PATH:$ORACLE_HOME/bin
# 重新加载配置
source ~/.bash_profile

 

十、解压oracle安装文件

# 解压
unzip /home/LINUX.X64_193000_db_home.zip -d /u01/app/oracle/product/19.0.0/dbhome_1

 

十一、配置db_install_custom.rsp文件

oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v19.0.0
oracle.install.option=INSTALL_DB_SWONLY
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oraInventory
ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.OSDBA_GROUP=dba
oracle.install.db.OSOPER_GROUP=dba
oracle.install.db.OSBACKUPDBA_GROUP=dba
oracle.install.db.OSDGDBA_GROUP=dba
oracle.install.db.OSKMDBA_GROUP=dba
oracle.install.db.OSRACDBA_GROUP=dba

# 主库特有配置
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
# 8核CPU建议分配总内存的50%(假设32GB物理内存)
oracle.install.db.config.starterdb.memoryLimit=8192  
oracle.install.db.config.starterdb.installExampleSchemas=false
# 统一密码(生产环境需修改)
oracle.install.db.config.starterdb.password.ALL=Ab123456!

# 禁用不需要的组件
oracle.install.db.config.starterdb.managementOption=DEFAULT
oracle.install.db.config.starterdb.enableRecovery=true
oracle.install.db.config.starterdb.storageType=FILE_SYSTEM_STORAGE
oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=/u01/app/oracle/oradata
oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=/u01/app/oracle/fast_recovery_area

 

十二、安装oracle

进入到 /u01/app/oracle/product/19.0.0/dbhome_1

# 进入到安装目录下
cd /u01/app/oracle/product/19.0.0/dbhome_1
# 静默安装
./runInstaller -silent -ignorePrereq -waitForCompletion \ -responseFile /u01/app/oracle/product/19.0.0/dbhome_1/install/response/db_install_custom.rsp

根据提示,切换到root用户下,执行sh脚本文件。

su
/u01/app/oracle/product/19.0.0/dbhome_1/root.sh

 

 

十三、使用dbca创建实例

切换到oracle用户。

# 切换oracle用户
su - oracle
# 主库执行(oracle用户),dbca创建数据库示例,会自动生成pfile文件,不需要自己配置initorcl.ora然后再生成pfile dbca
-silent -createDatabase \ -templateName General_Purpose.dbc \ -gdbname orcl \ -sid orcl \ -responseFile NO_VALUE \ -characterSet AL32UTF8 \ -nationalCharacterSet AL16UTF16 \ -createAsContainerDatabase false \ -numberOfPdbs 1 \ -pdbName db1pdb \ -pdbAdminPassword "Ab123456!" \ -dbsnmpPassword "Ab123456!" \ -sysPassword "Ab123456!" \ -systemPassword "Ab123456!" \ -emConfiguration NONE \ -ignorePreReqs

 

十四、查看数据库状态

# 进入oracle
sqlplus / as sysdba

# 查看实例状态
SELECT status FROM v$instance;

 

附录:

从库从主库传输来的initorcl.ora文件,需要更改,具体如下。重点这一行需要加上去,*.db_unique_name='orcl2'

orcl.__data_transfer_cache_size=0
orcl.__db_cache_size=1929379840
orcl.__inmemory_ext_roarea=0
orcl.__inmemory_ext_rwarea=0
orcl.__java_pool_size=0
orcl.__large_pool_size=50331648
orcl.__oracle_base='/u01/app/oracle'#ORACLE_BASE set from environment
orcl.__pga_aggregate_target=838860800
orcl.__sga_target=2516582400
orcl.__shared_io_pool_size=0
orcl.__shared_pool_size=520093696
orcl.__streams_pool_size=0
orcl.__unified_pga_pool_size=0
*.audit_file_dest='/u01/app/oracle/admin/orcl/adump'
*.audit_trail='db'
*.compatible='19.0.0'
*.control_files='/u01/app/oracle/oradata/ORCL/control01.ctl','/u01/app/oracle/oradata/ORCL/control02.ctl'#Restore Controlfile
*.db_block_size=8192
*.db_file_name_convert='/u01/app/oracle/oradata/ORCL/','/u01/app/oracle/oradata/ORCL2/'
*.db_flashback_retention_target=4320
*.db_name='orcl'
*.db_unique_name='orcl2'
*.db_recovery_file_dest_size=53687091200
*.db_recovery_file_dest='/u01/flashback/recovery_area'
*.diagnostic_dest='/u01/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)'
*.fal_client='DB2'
*.fal_server='DB1'
*.log_archive_config='DG_CONFIG=(orcl,orcl2)'
*.log_archive_dest_1='LOCATION=/u01/app/oracle/product/19.0.0/dbhome_1/dbs/arch VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=orcl2'
*.log_archive_dest_2='SERVICE=db1 LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=orcl'
*.log_archive_dest_state_1='ENABLE'
*.log_archive_dest_state_2='ENABLE'
*.log_file_name_convert='/u01/app/oracle/oradata/ORCL/','/u01/app/oracle/oradata/ORCL2/'
*.nls_language='SIMPLIFIED CHINESE'
*.nls_territory='CHINA'
*.open_cursors=300
*.pga_aggregate_target=796m
*.processes=640
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=2388m
*.standby_file_management='MANUAL'
*.undo_tablespace='UNDOTBS1'

 

posted @ 2025-05-26 21:25  Auler  阅读(639)  评论(0)    收藏  举报