Linux云平台Oracle 12c安装与数据迁移

Linux云平台Oracle 12c安装与数据迁移

配置阿里云环境的操作系统参数

hosts 主机信息配置

sql 复制代码
echo "172.18.33.214 iZwz9f32ql5nimsjsa4verZ" >> /etc/hosts 
#这里的IP地址是云服务器的内外地址,可以使用ifconfig命令查看,不是你用ssh登录的公网IP。

配置英文环境变量

sql 复制代码
echo "export LANG=en_US" >> ~/.bash_profile 

创建 SWAP 交换页面空间

sql 复制代码
#使用下面命名查看服务器有没有swap空间,没有的需要新建
free -m   
sql 复制代码
#安装oracle数据库必须要有swap空间,不然在后面安装检查过程中回报错。
#使用dd命令,划分出swap空间,一般生产环境配置8G即可。
dd if=/dev/zero of=/home/swap bs=1M count=4096 
mkswap /home/swap 
swapon /home/swap 

#磁盘添加到fatab,开机自动挂载
vi /etc/fstab 
/home/swap swap swap default 0 0 

创建用户与目录

sql 复制代码
/usr/sbin/groupadd -g 60001 oinstall 
/usr/sbin/groupadd -g 60002 dba 
/usr/sbin/groupadd -g 60003 oper 
useradd -u 61001 -g oinstall -G dba,oper oracle 
id oracle 
passwd oracle 
sql 复制代码
#创建目录
mkdir /oracle 
mkdir /oradata 
mkdir -p /oracle/app/oracle/product/12.2.0/db_1 
mkdir -p /oracle/app/oraInventory 
chown -R oracle:oinstall /oracle 
chown -R oracle:oinstall /oradata 
chmod -R 775 /oracle 
chmod -R 775 /oradata 

安装相关 ORACLE 需要的依赖软件包

cd /etc/yum.repos.d

yum list |more

sql 复制代码
yum -y install autoconf 
yum -y install automake 
yum -y install binutils 
yum -y install binutils-devel 
yum -y install bison
yum -y install cpp 
yum -y install dos2unix 
yum -y install ftp 
yum -y install gcc 
yum -y install gcc-c++ 
yum -y install lrzsz 
yum -y install python-devel 
yum -y install compat-db* 
yum -y install compat-gcc-34 
yum -y install compat-gcc-34-c++ 
yum -y install compat-libcap1 
yum -y install compat-libstdc++-33 
yum -y install compat-libstdc++-33.i686 
yum -y install glibc-* 
yum -y install glibc-*.i686 
yum -y install libXpm-*.i686 
yum -y install libXp.so.6 
yum -y install libXt.so.6 
yum -y install libXtst.so.6 
yum -y install libXext 
yum -y install libXext.i686 
yum -y install libXtst 
yum -y install libXtst.i686 
yum -y install libX11 
yum -y install libX11.i686 
yum -y install libXau 
yum -y install libXau.i686 
yum -y install libxcb 
yum -y install libxcb.i686 
yum -y install libXi 
yum -y install libXi.i686 
yum -y install libgcc_s.so.1 
yum -y install libstdc++.i686 
yum -y install libstdc++-devel 
yum -y install libstdc++-devel.i686 
yum -y install libaio
yum -y install libaio.i686 
yum -y install libaio-devel 
yum -y install libaio-devel.i686 
yum -y install ksh 
yum -y install libXp 
yum -y install libaio-devel 
yum -y install numactl 
yum -y install numactl-devel 
yum -y install make -y 
yum -y install sysstat -y 
yum -y install unixODBC 
yum -y install unixODBC-devel 
yum -y install elfutils-libelf-devel-0.97 
yum -y install elfutils-libelf-devel 
yum -y install redhat-lsb-core 
yum -y install unzip 

修改操作系统相关参数

修改资源限制

vi /etc/security/limits.conf

sql 复制代码
#ORACLE SETTING 
oracle soft nproc 16384
oracle hard nproc 16384 
oracle soft nofile 16384
oracle hard nofile 65536 
oracle soft stack 10240 
oracle hard stack 32768
#oracle hard memlock 8192000 
#oracle soft memlock 8192000 --[锁页,8G就给6G,16G给12G]

--重新登录检查

ulimit -a

控制为用户分配的资源
sql 复制代码
echo "session required pam_limits.so" >> /etc/pam.d/login 
cat /etc/pam.d/login 
修改内核参数

vi /etc/sysctl.conf

sql 复制代码
#ORACLE SETTING 
fs.aio-max-nr = 1048576 
fs.file-max = 6815744 
kernel.shmmax = 1210612736 
kernel.shmall = 295560 
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 = 1048586 
kernel.panic_on_oops = 1 
#vm.nr_hugepages = 2500 
 
sysctl -p

--如果设置了 hugepages,还需要关闭透明页

vi /etc/rc.d/rc.local

sql 复制代码
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then 
echo never > /sys/kernel/mm/transparent_hugepage/enabled 
fi 
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then 
echo never > /sys/kernel/mm/transparent_hugepage/defrag 
fi 

chmod +x /etc/rc.d/rc.local

配置安全

防火墙
sql 复制代码
systemctl status firewalld.service 
systemctl stop firewalld.service 
systemctl disable firewalld.service 
SELINUX(阿里云默认关闭)
sql 复制代码
vi /etc/selinux/config 
SELINUX=disabled 

setenforce 0 

设置 ORACLE 用户的环境变量

su - oracle

vi .bash_profile

sql 复制代码
PS1="[`whoami`@`hostname`:"'$PWD]$' 

export PS1
export TMP=/tmp 
export LANG=en_US 
export TMPDIR=$TMP 
export ORACLE_UNQNAME=hefeidb 
ORACLE_SID=hefeidb; export ORACLE_SID 
ORACLE_BASE=/oracle/app/oracle; export ORACLE_BASE 
ORACLE_HOME=$ORACLE_BASE/product/12.2.0/db_1; export ORACLE_HOME
ORACLE_TERM=xterm; export ORACLE_TERM 
NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"; export NLS_DATE_FORMAT 
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK;export NLS_LANG 
PATH=.:$PATH:$HOME/.local/bin:$HOME/bin:$ORACLE_HOME/bin; export PATH 
THREADS_FLAG=native; export THREADS_FLAG 
umask=022 
if [ $USER = "oracle" ]; then 
if [ $SHELL = "/bin/ksh" ]; then 
ulimit -p 16384 
ulimit -n 65536 
else 
ulimit -u 16384 -n 65536 
fi 
umask 022 
fi 

env |grep ORACLE

数据库软件安装与监听配置

安装数据库软件

su - oracle

cd /soft/database/

cp -r response /oracle/

oracle@iZwz9f32ql5nimsjsa4verZ:/oracle/response\]KaTeX parse error: Expected group after '\^' at position 31: ...rsp \|grep -Ev "\^̲#\|\^" mv db_install.rsp db_install.rsp.bak ```sql #vi db_install.rsp oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v12.2.0 oracle.install.option=INSTALL_DB_SWONLY UNIX_GROUP_NAME=oinstall INVENTORY_LOCATION=/oracle/app/oraInventory ORACLE_HOME=/oracle/app/oracle/product/12.2.0/db_1 ORACLE_BASE=/oracle/app/oracle oracle.install.db.InstallEdition=EE oracle.install.db.OSDBA_GROUP=dba oracle.install.db.OSOPER_GROUP=oper oracle.install.db.OSBACKUPDBA_GROUP=dba oracle.install.db.OSDGDBA_GROUP=dba oracle.install.db.OSKMDBA_GROUP=dba oracle.install.db.OSRACDBA_GROUP=dba #chmod 775 db_install.rsp ``` ```sql su - root vi /etc/oraInst.loc inventory=/oracle/app/oraInventory inst_group=oinstall chown oracle:oinstall /etc/oraInst.loc ``` #### 运行安装 ```sql su - oracle cd /soft/database ./runInstaller -silent -force -noconfig -responseFile /oracle/response/db_install.rsp #-silent 静默安装不做任何提示 #--force 不是空目录不给安装,加这个就是安装 #-noconfig 不运行监听配置 #-responseFile 响应文件,绝对路径 ``` #### 跑 sh 脚本 --用root用户执行 ![image-20241117215652076](https://img-blog.csdnimg.cn/img_convert/82d2434da9dda6beb9ab0194fb084287.png) #### 配置监听 ```sql [oracle@iZwz9f32ql5nimsjsa4verZ:/oracle/response]$cat netca.rsp |grep -Ev "^#|^$" [GENERAL] RESPONSEFILE_VERSION="12.2" CREATE_TYPE="CUSTOM" [oracle.net.ca] INSTALLED_COMPONENTS={"server","net8","javavm"} INSTALL_TYPE=""typical"" LISTENER_NUMBER=1 LISTENER_NAMES={"LISTENER"} LISTENER_PROTOCOLS={"TCP;1521"} LISTENER_START=""LISTENER"" NAMING_METHODS={"TNSNAMES","ONAMES","HOSTNAME"} NSN_NUMBER=1 NSN_NAMES={"EXTPROC_CONNECTION_DATA"} NSN_SERVICE={"PLSExtProc"} NSN_PROTOCOLS={"TCP;HOSTNAME;1521"} netca -silent -responsefile /oracle/response/netca.rsp ``` lsnrctl status 查看监听,正常。 ### 数据库的创建 #### 静默创建 ORACLE 数据库 ```sql dbca [oracle@iZwz9f32ql5nimsjsa4verZ:/oracle/response]$cat dbca.rsp |grep -Ev "^#|^$" responseFileVersion=/oracle/assistants/rspfmt_dbca_response_schema_v12.2.0 gdbName= sid= databaseConfigType= RACOneNodeServiceName= policyManaged= createServerPool= serverPoolName= cardinality= force= pqPoolName= pqCardinality= createAsContainerDatabase= numberOfPDBs= pdbName= useLocalUndoForPDBs= pdbAdminPassword= nodelist= templateName= sysPassword= systemPassword= oracleHomeUserPassword= emConfiguration= emExpressPort=5500 runCVUChecks= dbsnmpPassword= omsHost= omsPort= emUser= emPassword= dvConfiguration= dvUserName= dvUserPassword= dvAccountManagerName= dvAccountManagerPassword= olsConfiguration= datafileJarLocation= datafileDestination= recoveryAreaDestination= storageType= diskGroupName= asmsnmpPassword= recoveryGroupName= characterSet= nationalCharacterSet= registerWithDirService= dirServiceUserName= dirServicePassword= walletPassword= listeners= variablesFile= variables= initParams= sampleSchema= memoryPercentage= databaseType= automaticMemoryManagement= totalMemory= ``` ##### 方式01.通过响应文件创建 ```sql dbca -silent -createDatabase -responseFile /oracle/response/dbca.rsp ``` ##### 方式02.通过手工指定参数创建 ```sql dbca -silent -createDatabase -templateName General_Purpose.dbc -gdbName hefeidb -sid hefeidb -databaseConfigType SI -responseFile NO_VALUE -sysPassword oracle -systemPassword oracle -characterSet ZHS16GBK -memoryPercentage 30 -emConfiguration LOCAL ``` ![image-20241117220056386](https://img-blog.csdnimg.cn/img_convert/2edd4f732f731ade81fbdf1848fc47c5.png) ```sql oracle@iZwz9f32ql5nimsjsa4verZ:/oracle/response]$dbca -help Usage: dbca [] [

相关推荐
DavidSoCool3 小时前
记一个阿里云CDN域名配置不当引起服务鉴权失效问题
阿里云·云计算·cdn
G皮T3 小时前
【弹性计算】异构计算云服务和 AI 加速器(四):FPGA 虚拟化技术
阿里云·fpga开发·云计算·虚拟化·fpga·异构计算·弹性计算
我是唐青枫5 小时前
Linux ar 命令使用详解
linux·运维·服务器
mljy.5 小时前
Linux《进程概念(上)》
linux
余华余华6 小时前
计算机等级考试数据库三级(笔记3)
服务器·数据库·oracle
IEVEl6 小时前
Centos7 开放端口号
linux·网络·centos
南風_入弦7 小时前
Oracle logminer详解
数据库·oracle·恢复
我要升天!7 小时前
Linux中《环境变量》详细介绍
linux·运维·chrome
MobiCetus7 小时前
有关pip与conda的介绍
linux·windows·python·ubuntu·金融·conda·pip
weixin_428498498 小时前
Linux系统perf命令使用介绍,如何用此命令进行程序热点诊断和性能优化
linux·运维·性能优化