CentOS7.8 Oracle19.3 CDB 模式 单实例安装部署

CentOS7.8 Oracle19.3安装部署

1.hosts配置

cat >> /etc/hosts <<EOF
10.128.xx.xx S sjzdb
EOF

关闭防火墙
systemctl stop firewalld
systemctl disable firewalld

关闭selinux
sed -i ‘s@SELINUX=enforcing@SELINUX=disabled@g’ /etc/selinux/config

2./etc/sysctl.conf配置

cat >> /etc/sysctl.conf << EOF
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 4194304
kernel.shmmax = 17179869183
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
EOF

3./etc/security/limits.conf

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
oracle hard stack 32768
oracle soft memlock 3145728
oracle hard memlock 3145728
EOF

参数设置计算:
kernel.shmmax = 当前内存GB * 1024 * 1024 * 1024 * 0.9
注:当前内存推荐至少4GB
kernel.shmall = kernel.shmmax / kernel.shmmni

详细解释:

shmall 是全部允许使用的共享内存大小
shmmax 是单个段允许使用的大小
这两个可以设置为内存的 90%
例如 16G 内存,1610241024102490% = 15461882265
shmall 的大小为 15461882265/4k(getconf PAGESIZE可得到) = 3774873

#修改后执行
sysctl -p

4./etc/pam.d/login配置

echo “session required pam_limits.so” >> /etc/pam.d/login

5.安装依赖包

rpm --query --queryformat “%{NAME}-%{VERSION}.%{RELEASE} (%{ARCH})\n” bc binutils compat-libcap1 compat-libstdc+±33 gcc gcc-c++ glibc gli
bc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc+±devel make sysstat elfutils-libelf elfutils-libelf-devel fontconfig-devel libxcb smar
tmontools libX11 libXau libXtst libXrender libXrender-devel
yum install -y bc
yum install -y compat-libcap1
yum install -y compat-libstdc++33
yum install -y elfutils-libelf-devel
yum install -y fontconfig-devel
yum install -y ksh
yum install -y libaio-devel
yum install -y libX11
yum install -y libXau
yum install -y libXi
yum install -y libXtst
yum install -y libXrender
yum install -y libXrender-devel
yum install -y libstdc+±devel
yum install -y libxcb
yum install -y smartmontools
yum install -y unixODBC
yum install -y sysstat
yum install -y smartmontools
yum install -y compat-libstdc+±33

6.创建账号

groupadd oinstall
groupadd dba
groupadd asmdba
groupadd backupdba
groupadd dgdba
groupadd kmdba
groupadd racdba
groupadd oper
useradd -u 54321 -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba,oper oracle
echo “oracle” | passwd --stdin oracle

7.创建目录

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

8.设置oracle环境变量

export ORACLE_BASE=/OSdata/app/oracle
export ORACLE_SID=sjzt
export ORACLE_HOME= O R A C L E B A S E / p r o d u c t / 19.0.0 / d b h o m e 1 e x p o r t T N S A D M I N = ORACLE_BASE/product/19.0.0/dbhome_1 export TNS_ADMIN= ORACLEBASE/product/19.0.0/dbhome1exportTNSADMIN=ORACLE_HOME/network/admin
export PATH= P A T H : PATH: PATH:HOME/.local/bin: H O M E / b i n : HOME/bin: HOME/bin:ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib

9.编辑静默安装文件

编辑响应文件
$ cat db_install.rsp|grep -Ev “#|$”
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v19.0.0
oracle.install.option=INSTALL_DB_SWONLY
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/OSdata/app/oraInventory
ORACLE_HOME=/OSdata/app/oracle/product/19.0.0/dbhome_1
ORACLE_BASE=/OSdata/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.OSDBA_GROUP=dba
oracle.install.db.OSOPER_GROUP=oper
oracle.install.db.OSBACKUPDBA_GROUP=backupdba
oracle.install.db.OSDGDBA_GROUP=dgdba
oracle.install.db.OSKMDBA_GROUP=kmdba
oracle.install.db.OSRACDBA_GROUP=racdba
oracle.install.db.rootconfig.executeRootScript=true
oracle.install.db.rootconfig.configMethod=ROOT
oracle.install.db.rootconfig.sudoPath=
oracle.install.db.rootconfig.sudoUserName=
oracle.install.db.CLUSTER_NODES=
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
oracle.install.db.config.starterdb.globalDBName=
oracle.install.db.config.starterdb.SID=
oracle.install.db.ConfigureAsContainerDB=false
oracle.install.db.config.PDBName=

执行安装
./runInstaller -executePrereqs -silent -responseFile /OSdata/app/oracle/product/19.0.0/dbhome_1/install/db_install.rsp

10.静默安装监听

编辑响应文件

$ cat /OSdata/app/oracle/product/19.0.0/dbhome_1/assistants/netca/netca.rsp |grep -Ev “#|$”
[GENERAL]
RESPONSEFILE_VERSION=“19.0”
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”}

执行安装
$ORACLE_HOME/bin/netca -silent -responsefile /OSdata/app/oracle/product/19.0.0/dbhome_1/assistants/netca/netca.rsp

11.静默安装数据库

编辑响应文件
$ cat /OSdata/app/oracle/product/19.0.0/dbhome_1/assistants/dbca/dbca.rsp |grep -Ev “#|$”
responseFileVersion=/oracle/assistants/rspfmt_dbca_response_schema_v19.0.0
gdbName=sjzt
sid=sjzt
databaseConfigType=
RACOneNodeServiceName=
policyManaged=
createServerPool=
serverPoolName=
cardinality=
force=
pqPoolName=
pqCardinality=
createAsContainerDatabase=TRUE
numberOfPDBs=1
pdbName=orms
useLocalUndoForPDBs=true
pdbAdminPassword=Sjztdb2023
nodelist=
templateName=/OSdata/app/oracle/product/19.0.0/dbhome_1/assistants/dbca/templates/General_Purpose.dbc
sysPassword=Sjztdb2023
systemPassword=Sjztdb2023
oracleHomeUserPassword=
emConfiguration=NONE
emExpressPort=5500
runCVUChecks=
dbsnmpPassword=
omsHost=
omsPort=
emUser=
emPassword=
dvConfiguration=
dvUserName=
dvUserPassword=
dvAccountManagerName=
dvAccountManagerPassword=
olsConfiguration=
datafileJarLocation=
datafileDestination=/OSdata/app/oracle/oradata
recoveryAreaDestination=/OSdata/app/oracle/flash_recovery_area
storageType=FS
diskGroupName=
asmsnmpPassword=
recoveryGroupName=
characterSet=AL32UTF8
nationalCharacterSet=AL16UTF16
registerWithDirService=
dirServiceUserName=
dirServicePassword=
walletPassword=
listeners=LISTENER
variablesFile=
variables=
initParams=
sampleSchema=
memoryPercentage=40
databaseType=
automaticMemoryManagement=
totalMemory=

执行安装
dbca -silent -createDatabase -responseFile /OSdata/app/oracle/product/19.0.0/dbhome_1/assistants/dbca/dbca.rsp

安装PDB
create pluggable database test admin user sjztadmin identified by sjztadmin file_name_convert=(‘pdbseed’,‘test’);
alter pluggable database test open;
alter pluggable database test save state;

备注:删除数据库重新安装
dbca -silent -deleteDatabase -sourcedb dbname -sid dbname -sysDBAUserName sys -sysDBAPassword pwd

12.配置TNS访问连接串

test =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.128.103.77)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = test)
)
)

cat >> $ORACLE_HOME/network/admin/sqlnet.ora << EOF
SQLNET.ALLOWED_LOGON_VERSION_CLIENT=8
SQLNET.ALLOWED_LOGON_VERSION_SERVER=8
EOF

13. 开启归档模式

ALTER SYSTEM SET db_recovery_file_dest_size=100G scope=both;
shutdown immediate;
startup mount;
archive log list;
show pdbs;
alter session set container=fims;
archive log list;
alter session set container=cdb$root;
alter database archivelog;
archive log list;
alter database open;

编辑归档清理脚本

定时删除归档日志
#!/bin/sh
export DATE=date +%F
export ORACLE_BASE=/OSdata/app/oracle
export ORACLE_HOME=/OSdata/app/oracle/product/19.0.0/dbhome_1
export PATH= O R A C L E H O M E / b i n : ORACLE_HOME/bin: ORACLEHOME/bin:ORACLE_HOME/OPatch: P A T H e x p o r t L I B P A T H = PATH export LIBPATH= PATHexportLIBPATH=LIBPATH:$ORACLE_HOME/lib
export ORACLE_SID=sjzt

touch /home/oracle/scripts/logs/clear_arch_$DATE.log

rman log=/home/oracle/scripts/logs/clear_arch_$DATE.log target / <<EOF
delete noprompt archivelog until time ‘sysdate-30’;
#检查归档
crosscheck archivelog all;
#删除无效归档
delete noprompt expired archivelog all;
exit;
EOF

find /home/oracle/scripts/logs -mtime +30 -name “clear*.log” |xargs rm -f

echo " " >> /home/oracle/scripts/logs/clear_arch_ D A T E . l o g e c h o ‘ d a t e ′ + DATE.log echo `date '+%Y-%m-%d %H:%M:%S'` >> /home/oracle/scripts/logs/clear_arch_ DATE.logechodate+DATE.log

设置定时任务
10 1 * * * /bin/sh /home/oracle/scripts/clear_arch.sh

14.修改字符集

alter pluggable database test close immediate;
alter pluggable database test open read write restricted;
show pdbs;
select userenv(‘language’) from dual;

– in container test
alter session set container=test;
select userenv(‘language’) from dual;

alter database character set internal_use ZHS16GBK;
alter pluggable database test close immediate;
alter pluggable database test open;
show pdbs;
select userenv(‘language’) from dual;

15.修改用户有效期

创建数据库修改密码过期时间
col username for a10
col profile for a30
set pages 200
SELECT username,PROFILE FROM dba_users;
SELECT * FROM dba_profiles s WHERE s.profile=‘DEFAULT’;
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
ALTER PROFILE DEFAULT LIMIT PASSWORD_GRACE_TIME UNLIMITED;
ALTER PROFILE DEFAULT LIMIT PASSWORD_LOCK_TIME UNLIMITED;
ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Oracle19.3是一款由Oracle公司开发的数据库管理系统,而CentOS7.9则是一款基于Red Hat Enterprise Linux(RHEL)的开源操作系统。在这两者的组合中,你可以将Oracle19.3安装CentOS7.9上进行数据库管理和应用部署。 首先,你需要先确保你的CentOS7.9系统已经安装并配置好。可以通过访问CentOS官方网站下载最新版本的CentOS7.9,并根据指南完成安装。确认系统安装完成并能连接到网络后,你可以进行下一步。 接下来,你需要下载Oracle19.3的安装文件。你可以从Oracle官方网站获取到Oracle19.3的安装包。确保你下载的是适用于CentOS7.9的版本。 安装Oracle19.3需要一些前置依赖的软件包。你可以通过CentOS的包管理器yum来安装这些依赖。运行命令 yum install 中的软件包名称 来安装相应的依赖包。 安装好依赖包后,你可以开始安装Oracle19.3。解压下载的安装包,并运行安装程序。根据安装向导的指引,设置Oracle19.3的安装目录、数据库管理员账户等信息。 安装完成后,你可以启动Oracle19.3的数据库服务,并配置数据库实例。你可以通过Oracle提供的命令行工具或者图形界面工具进行数据库的配置和管理。 同时,你还可以在CentOS7.9上安装适用于Oracle19.3的其他工具或者应用程序,来进一步扩展数据库的功能和性能。 需要注意的是,安装和配置Oracle19.3是一个复杂的过程,需要具备一定的数据库管理和操作系统管理的知识。如果你是初学者,建议参考Oracle官方文档或者寻求专业的技术支持来辅助完成安装和配置过程。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值