1、安装麒麟V10SP1系统(最小化安装)

1.1 检查服务器版本

uname -acat /etc/os-releasecat /etc/yum.repos.d/kylin_x86_64.repo

检查出来服务器是麒麟V10SP1.1系统

1.2 配置固定IP、本地yum源

mount -o loop Kylin-Server-10-SP1-Release-Build20-20210518-x86_64.iso /mntcp /etc/yum.repos.d/kylin_x86_64.repo /etc/yum.repos.d/kylin_x86_64.repo.bakvi /etc/yum.repos.d/kylin_x86_64.repo
  • 本地yum源内容
[ks10-local]name = local_yumbaseurl = file:///mntgpgcheck = 0enabled = 1
  • 创建缓存
yum clean allyum makecache
  • 配置固定IP(ifcfg-开头),通过命令 ip a 查看
ip avi /etc/sysconfig/network-scripts/ifcfg-ens33
  • 示例内容
TYPE=EthernetPROXY_METHOD=noneBROWSER_ONLY=noBOOTPROTO=staticDEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noIPV6_ADDR_GEN_MODE=stable-privacyNAME=ens33UUID=958d566c-d1b8-4c42-977c-f33508f1412cDEVICE=ens33ONBOOT=yesIPADDR=192.168.108.15GATEWAY=192.168.108.2NETMASK=255.255.255.0DNS1=192.168.108.2

2、初始化服务器参数

2.1 初始化主机名

hostnamectl set-hostname server01

2.2 关闭selinux

vi /etc/selinux/config修改SELINUX=disabled

2.3 关闭防火墙(非必须)

systemctl stop firewalldsystemctl disable firewalld

3、初始化Oracle安装

3.1 创建oracle用户

groupadd oinstallgroupadd dbauseradd -g oinstall -G dba oraclepasswd oracle
  • 验证oracle
id oracleuid=1001(oracle) gid=1001(oinstall) groups=1001(oinstall),1002(dba)

3.2 配置内核参数

vi /etc/sysctl.conf
  • 添加如下内容到sysctl.conf
# use for oracle11gR2kernel.shmmax = 2147483648kernel.shmall = 268435456kernel.shmmni = 4096kernel.sem = 250 32000 100 128net.ipv4.ip_local_port_range = 9000 65500# 1024 65000net.core.rmem_default = 4194304net.core.rmem_max = 4194304net.core.wmem_default = 262144net.core.wmem_max = 1048576# 262144fs.aio-max-nr = 1048576fs.file-max = 6815744#tuxedokernel.msgmni = 4096kernel.msgmax = 65536kernel.msgmnb = 84000
sysctl -p

3.3 修改用户权限

vi /etc/security/limits.conf
  • 添加如下内容到 limits.conf
oracle soft nproc 2047oracle hard nproc 16384oracle soft nofile 1024oracle hard nofile 65536oracle soft stack 10240oracle hard stack 10240
vi /etc/pam.d/login
  • 添加如下内容
session required /lib64/security/pam_limits.sosession required pam_limits.so
  • 修改配置文件在尾部添加
vi /etc/profile
if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536else ulimit -u 16384 -n 65536 fifi
source /etc/profile

3.4 创建安装目录

mkdir -p /data/oraclemkdir -p /data/oraInventorymkdir -p /data/rspchown -R oracle:oinstall /data/oraclechown -R oracle:oinstall /data/*chmod -R 775 /data/*

3.5 上传oracle安装文件(装服务器仅需要1of7、2of7这两个即可)

p13390677_112040_Linux-x86-64_1of7.zip
p13390677_112040_Linux-x86-64_2of7.zip

  • 解压后执行,用于处理oracle自带unzip问题
cd database/installmv unzip unzip.bakln -s /usr/bin/unzip

3.6 安装需要的依赖文件

  • 依赖文件包

解压后需强制安装非麒麟原有包,并卸载 libaio 用于降级

rpm -qa|grep libaiorpm -e libaio-0.3.111-5.p03.ky10.x86_64 --nodepsrpm -ivh *.rpm --nodeps --force
  • 安装结果如下

  • 安装其它依赖
yum install kshyum install libaio-devel*yum install elfutils*yum install gcc*
  • 提前处理缺失文件
cp libpthread_nonshared.a /usr/lib64/chmod 755 /usr/lib64/libpthread_nonshared.a

3.7 切换到oracle用户

  • 配置环境变量
vi ~/.bash_profile
export ORACLE_BASE=/data/oracleexport ORACLE_SID=orclexport ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1PATH=$PATH:$ORACLE_HOME/binexport PATH
  • 生效
source ~/.bash_profile

3.8 创建静默响应文件

  • 拷贝响应文件
cp /data/database/response/* /data/rspcd /data/rsp
  • 编辑db_install.rsp (可以直接替换以下内容,密码类参数可以安装后再调整)
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0oracle.install.option=INSTALL_DB_SWONLYORACLE_HOSTNAME=server01UNIX_GROUP_NAME=oinstallINVENTORY_LOCATION=/data/oraInventorySELECTED_LANGUAGES=en,zh_CN,zh_TWORACLE_HOME=/data/oracle/product/11.2.0/db_1ORACLE_BASE=/data/oracleoracle.install.db.InstallEdition=EEoracle.install.db.EEOptionsSelection=falseoracle.install.db.optionalComponents=oracle.rdbms.partitioning:11.2.0.4.0,oracle.oraolap:11.2.0.4.0,oracle.rdbms.dm:11.2.0.4.0,oracle.rdbms.dv:11.2.0.4.0,oracle.rdbms.lbac:11.2.0.4.0,oracle.rdbms.rat:11.2.0.4.0oracle.install.db.DBA_GROUP=dbaoracle.install.db.OPER_GROUP=oinstalloracle.install.db.CLUSTER_NODES=oracle.install.db.isRACOneInstall=oracle.install.db.racOneServiceName=oracle.install.db.config.starterdb.type=GENERAL_PURPOSEoracle.install.db.config.starterdb.globalDBName=orcloracle.install.db.config.starterdb.SID=orcloracle.install.db.config.starterdb.characterSet=AL32UTF8oracle.install.db.config.starterdb.memoryOption=trueoracle.install.db.config.starterdb.memoryLimit=1024oracle.install.db.config.starterdb.installExampleSchemas=falseoracle.install.db.config.starterdb.enableSecuritySettings=trueoracle.install.db.config.starterdb.password.ALL=orcloracle.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_CONTROLoracle.install.db.config.starterdb.gridcontrol.gridControlServiceURL=oracle.install.db.config.starterdb.automatedBackup.enable=falseoracle.install.db.config.starterdb.automatedBackup.osuid=oracle.install.db.config.starterdb.automatedBackup.ospwd=oracle.install.db.config.starterdb.storageType=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=falseDECLINE_SECURITY_UPDATES=truePROXY_HOST=PROXY_PORT=PROXY_USER=PROXY_PWD=PROXY_REALM=COLLECTOR_SUPPORTHUB_URL=oracle.installer.autoupdates.option=oracle.installer.autoupdates.downloadUpdatesLoc=AUTOUPDATES_MYORACLESUPPORT_USERNAME=AUTOUPDATES_MYORACLESUPPORT_PASSWORD=
  • 编辑netca.rsp (创建时端口号1521默认不可改,可在创建完毕后修改配置文件,见后续环节)
RESPONSEFILE_VERSION="11.2"CREATE_TYPE="CUSTOM"INSTALLED_COMPONENTS={"server","net8","javavm"}INSTALL_TYPE=""typical""LISTENER_NUMBER=1LISTENER_NAMES={"LISTENER"}LISTENER_PROTOCOLS={"TCP;1521"}LISTENER_START=""LISTENER""NAMING_METHODS={"TNSNAMES","ONAMES","HOSTNAME"}NSN_NUMBER=1NSN_NAMES={"EXTPROC_CONNECTION_DATA"}NSN_SERVICE={"PLSExtProc"}NSN_PROTOCOLS={"TCP;HOSTNAME;1521"}
  • 编辑dbca.rsp
RESPONSEFILE_VERSION="11.2.0"OPERATION_TYPE="createDatabase"GDBNAME="orcl"SID="orcl"TEMPLATENAME="General_Purpose.dbc"CHARACTERSET="AL32UTF8"

4、静默安装oracle

cd /data/database./runInstaller -silent -responseFile /data/rsp/db_install.rsp
  • 安装完后切换到root用户执行

su - root/data/oraInventory/orainstRoot.sh/data/oracle/product/11.2.0/db_1/root.shsu - oracle

5、处理安装异常

编辑安装日志可以找到有异常信息,搜索 Error 1即可看到,若通过图形界面安装,则会弹出错误界面,通过以下方式处理后,点击“重试”即可正常安装
静默模式下需要重新编译oracle,防止以后使用中出现莫名错误;

替换 ins_emagent.mk 文件

cp /data/package_ky10sp1_oracle/ins_emagent.mk /data/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
  • 重新编译oracle文件
cd $ORACLE_HOME/bin./relink all
  • 实际上修改ins_emagent.mk具体位置是,vi编辑并搜索 MK_EMAGENT_NMECTL 在后面添加 -lnnz11 参数

6、安装监听、创建数据库

cd $ORACLE_HOME/bin./netca -silent -responseFile /data/rsp/netca.rsp./dbca -silent -responseFile /data/rsp/dbca.rsp

7、登录测试

su - oraclecd $ORACLE_HOME/bin./sqlplus sys/orcl as sysdba;

  • 若查询报错,可能是数据库未启动成功,执行 startup; 命令启动数据库,再次查询即可

至此Oracle数据库安装完毕。

8、修改oracle监听端口

lsnrctl stopvi /data/oracle/product/11.2.0/db_1/network/admin/listener.ora
  • 修改listener.ora内的1521改为其它端口,保存
lsnrctl startnetstat -nltpu|grep tnslsnr