OL8是什么鬼?
请自行脑补,笔者今晚是真的累,附上脑补链接:
再附上安装的参考链接
这个链接其实也算不上是真正官方的,感觉还不错,好像是一个老外的博客!除了安装部署,还有很多知识点,老外写的都挺不错,盆友们可自行去研究更深入的东西哈!
Oracle 19C安装先决条件
特别注意:以下操作在root用户环境下进行
- /etc/hosts文件必须包含服务器的完全限定名称
sed -i '$a\::1 ol8-oracle19c-testserver.localdomain ol8-oracle19c-testserver' /etc/hosts
- 关闭防火墙
systemctl stop firewalld systemctl disable firewalld
- 关闭selinux
- vi /etc/selinux/config
SELINUX=disabled
- 使用oracle-database-preinstall-19c包来执行所有先决条件设置
dnf install oracle-database-preinstall-19c -y
- 设置oralce账户密码
passwd oracle
- 创建安装oracle软件的目录
mkdir -p /data/u01/app/oracle/product/19.0.0/dbhome_1 mkdir -p /data/u02/oradata chown -R oracle:oinstall /data/ chmod -R 775 /data/
Oracle 19c相关环境变量的配置文件准备
以下操作切换到oracle用户环境下进行,切换用户的操作巩固下?
su - oracle
- 在oracle用户的家目录下创建一个脚本目录
mkdir scripts cd scripts/
- 创建环境配置文件:/home/oracle/scripts/setEnv.sh
cat > /home/oracle/scripts/setEnv.sh <<EOF # Oracle Settings export TMP=/tmp export TMPDIR=\$TMP export ORACLE_HOSTNAME=ol8-oracle19c-testserver.localdomain export ORACLE_UNQNAME=cdb1 export ORACLE_BASE=/data/u01/app/oracle export ORACLE_HOME=\$ORACLE_BASE/product/19.0.0/dbhome_1 export ORA_INVENTORY=/data/u01/app/oraInventory export ORACLE_SID=cdb1 export PDB_NAME=pdb1 export DATA_DIR=/data/u02/oradata export PATH=/usr/sbin:/usr/local/bin:\$PATH export PATH=\$ORACLE_HOME/bin:\$PATH export LD_LIBRARY_PATH=\$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=\$ORACLE_HOME/jlib:\$ORACLE_HOME/rdbms/jlib EOF
- 在“/home/oracle/.bash_profile”文件的末尾添加对“setEnv.sh”文件的引用
echo ". /home/oracle/scripts/setEnv.sh" >> /home/oracle/.bash_profile source /home/oracle/.bash_profile
启停脚本准备
- start_all.sh脚本
cat > /home/oracle/scripts/start_all.sh <<EOF #!/bin/bash . /home/oracle/scripts/setEnv.sh export ORAENV_ASK=NO . oraenv export ORAENV_ASK=YES dbstart \$ORACLE_HOME EOF
- stop_all.sh脚本
cat > /home/oracle/scripts/stop_all.sh <<EOF #!/bin/bash . /home/oracle/scripts/setEnv.sh export ORAENV_ASK=NO . oraenv export ORAENV_ASK=YES dbshut \$ORACLE_HOME EOF
- 赋权
chown -R oracle:oinstall /home/oracle/scripts chmod u+x /home/oracle/scripts/*.sh
开始静默安装
- 进入$ORACLE_HOME路径,将二进制安装包上传该路径并解压
请自行下载OL8,并上传和解压哈!
$ cd $ORACLE_HOME [oracle@ol8-oracle19c-testserver dbhome_1]$ ls -l total 2987996 -rw-r--r-- 1 oracle oinstall 3059705302 Jan 18 09:10 LINUX.X64_193000_db_home.zip [oracle@ol8-oracle19c-testserver dbhome_1]$
- 执行前设置 CV_ASSUME_DISTID,解决ol8版本对19c兼容性问题
export CV_ASSUME_DISTID=OEL7.6
- 静默安装命令准备
关于静默安装的更多信息请参考:https://oracle-base.com/articles/misc/oui-silent-installations
./runInstaller -ignorePrereq -waitforcompletion -silent \ -responseFile ${ORACLE_HOME}/install/response/db_install.rsp \ oracle.install.option=INSTALL_DB_SWONLY \ ORACLE_HOSTNAME=${ORACLE_HOSTNAME} \ UNIX_GROUP_NAME=oinstall \ INVENTORY_LOCATION=${ORA_INVENTORY} \ SELECTED_LANGUAGES=en,en_GB \ ORACLE_HOME=${ORACLE_HOME} \ ORACLE_BASE=${ORACLE_BASE} \ oracle.install.db.InstallEdition=EE \ oracle.install.db.OSDBA_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 \ SECURITY_UPDATES_VIA_MYORACLESUPPORT=false \ DECLINE_SECURITY_UPDATES=true
- 这是安装成功后的输出,如果安装失败请自行解决哈!
As a root user, execute the following script(s): 1. /data/u01/app/oraInventory/orainstRoot.sh 2. /data/u01/app/oracle/product/19.0.0/dbhome_1/root.sh Execute /data/u01/app/oraInventory/orainstRoot.sh on the following nodes: [ol8-oracle19c-testserver] Execute /data/u01/app/oracle/product/19.0.0/dbhome_1/root.sh on the following nodes: [ol8-oracle19c-testserver] Successfully Setup Software. Moved the install session logs to: /data/u01/app/oraInventory/logs/InstallActions2022-02-25_04-14-51PM
只要前期的先决条件准备充分,正常情况下安装还是会比较顺利的。
- 切换到root,按照出现的提示,运行脚本
- 执行/data/u01/app/oraInventory/orainstRoot.sh
[root@ol8-oracle19c-testserver ~]# sh /data/u01/app/oraInventory/orainstRoot.sh Changing permissions of /data/u01/app/oraInventory. Adding read,write permissions for group. Removing read,write,execute permissions for world.
- 执行/data/u01/app/oracle/product/19.0.0/dbhome_1/root.sh
Changing groupname of /data/u01/app/oraInventory to oinstall. The execution of the script is complete. [root@ol8-oracle19c-testserver ~]# [root@ol8-oracle19c-testserver ~]# sh /data/u01/app/oracle/product/19.0.0/dbhome_1/root.sh Check /data/u01/app/oracle/product/19.0.0/dbhome_1/install/root_ol8-oracle19c-testserver_2022-02-25_16-25-04-378568362.log for the output of root script
- 启动监听器
>$ lsnrctl start
使用配置助手(DBCA)创建数据库
- 静默安装,命令行下执行
dbca -silent -createDatabase \ -templateName General_Purpose.dbc \ -gdbname ${ORACLE_SID} -sid ${ORACLE_SID} -responseFile NO_VALUE \ -characterSet AL32UTF8 \ -sysPassword s's's \ -systemPassword 1qaz#EDC \ -createAsContainerDatabase true \ -numberOfPDBs 1 \ -pdbName ${PDB_NAME} \ -pdbAdminPassword 1qaz#EDC \ -databaseType MULTIPURPOSE \ -memoryMgmtType auto_sga \ -totalMemory 2000 \ -storageType FS \ -datafileDestination "${DATA_DIR}" \ -redoLogFileSize 50 \ -emConfiguration NONE \ -ignorePreReqs
注意:请根据自己的实际环境调整上述参数,别直接粘贴笔者的。
- 安装完成后,编辑“/etc/oratab”文件,将每个实例的重启标志设置为“Y”
cdb1:/data/u01/app/oracle/product/19.0.0/dbhome_1:Y
- 启用 Oracle 托管文件 (OMF) 并确保 PDB 在实例启动时启动
sqlplus / as sysdba <<EOF alter system set db_create_file_dest='${DATA_DIR}'; alter pluggable database ${PDB_NAME} save state; exit; EOF
OK!今晚到此为止,就此搁笔。目前一台单机的Oracle 19c环境就准备好了,接下来就好玩了,笔者后面会慢慢剖析每个知识点,分享给大家。希望多多关注、点赞、转发。