本文包括:centos7静默安装oracle10g补丁1024,手工创建数据库全纪录
1.安装依赖包
yum -y install binutils compat-libstdc++-33 compat-libstdc++-33.i686 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc.i686 glibc-common glibc-devel glibc-devel.i686 glibc-headers ksh libaio libaio.i686 libaio-devel libaio-devel.i686 libgcc libgcc.i686 libstdc++ libstdc++.i686 libstdc++-devel make sysstat libXp libXt.i686 libXtst.i686 libXp.i686
2.修改版本
vi /etc/redhat-release
#CentOS Linux release 7.6.1810 (Core)
Linux=redhat-3
3.创建Oracle用户与组
(1) 建立群组oinstall
# groupadd oinstall
(2) 建立群组dba
# groupadd dba
(3) 新建用户oracle并将其加入oinstall和dba组
# useradd -m -g oinstall -G dba oracle
(4) 查看oracle账号信息(这里注意一下dba的id,后面改配置文件的时候需要)
# id oracle
(5) 设置oracle的密码
# passwd oracle
4.文件配置系统内核参数
vi /etc/sysctl.conf
m.swappiness = 0
net.ipv4.neigh.default.gc_stale_time = 120
# see details in https://help.aliyun.com/knowledge_detail/39428.html
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.default.arp_announce = 2
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_announce = 2
# see details in https://help.aliyun.com/knowledge_detail/41334.html
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 1024
net.ipv4.tcp_synack_retries = 2
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
kernel.sysrq = 1
kernen.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65500
net.core.rmem_default = 4194304
net.core.wmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_max = 262144
vm.hugetlb_shm_group = 1001
#这里1001是oracle用户组dba的gid
使配置生效
sysctl -p
vi /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
vi /etc/pam.d/login
#%PAM-1.0
auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so
auth substack system-auth
auth include postlogin
account required pam_nologin.so
account include system-auth
password include system-auth
# pam_selinux.so close should be the first session rule
session required pam_selinux.so close
session required pam_loginuid.so
session optional pam_console.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session required pam_selinux.so open
session required pam_namespace.so
session optional pam_keyinit.so force revoke
session include system-auth
session include postlogin
-session optional pam_ck_connector.so
session required /lib64/security/pam_limits.so
vi /etc/profile
添加
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
配置swap环境
创建swap
mkdir /swap
dd if=/dev/zero of=/swap/swap bs=1024 count=1024000
mkswap /swap/swap
激活/swap/swap交换文件
swapon /swap/swap
查看是否生效
free -m
设置成永久生效
echo"/swap/swap swap swap defaults 0 0" >> /etc/fstab
删除swap分区
swapoff /swap/swap
rm -rf /swap/swap
删除"/etc/swap"指定文件
sed -i "/'\/swa\/swap swap swap defaults 0 0'//" /etc/fstab
5.创建oracle目录
mkdir -p /u01/app/oracle
chown -R oracle:oinstall /oracle
6.配置oracle用户环境
vi /home/oracle/.bash_profile
export PATH
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_SID=orcl
export PATH=$PATH:$HOME/.local/bin:$HOME/bin:$ORACLE_HOME/bin
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK;
使设置马上生效:
source /home/oracle/.bash_profile
7.解压安装文件
cpio -idmv < a.cpio
unzip a.zip
8.先安装数据库
修改静默安装文件
cd /database/response
vi enterprise.rsp
UNIX_GROUP_NAME="oinstall"
ORACLE_HOME="/u01/app/oracle/product/10.2.0/db_1"
ORACLE_HOME_NAME="Ora_HOME1"
ORACLE_HOSTNAME="主机名"
s_nameForDBAGrp=oinstall
s_nameForOPERGrp=oinstall
n_configurationOption=3 ##数据库安装的动作类型:1.安装并创建数据库 2.配置一个ASM实例 3.仅安装数据库软件
n_dbType=1 ##创建的数据库类型:1.通用目的的数据库 2.联机事务处理的数据库 3.用作数据仓库的数据库 4.高级配置
s_globalDBName=ora10g ##数据库的全局名
s_dbSid=ora10g ##数据库实例名
s_dbRetChar="ZHS16GBK" ##数据库字符集
执行安装
./runInstaller -silent -responseFile /database/response/enterprise.rsp
最后以 root 权限运行脚本
/oracle/oraInventory/orainstRoot.sh
/oracle/product/10.2.0/db_1/root.sh
9.安装补丁
修改静默安装文件
cd /Disk1/response
vi patchset.rsp
UNIX_GROUP_NAME="oinstall"
ORACLE_HOME="/u01/app/oracle/product/10.2.0/db_1"
ORACLE_HOME_NAME="Ora_HOME1"
OUI_HOSTNAME="主机名"
执行安装
./runInstaller -silent -responseFile /Disk1/response/patchset.rsp
最后以 root 权限运行脚本
10.设置实例名:
修改/home/oracle/.bash_profile文件,添加下列这行内容。
export ORACLE_SID=orcl
修改之后使用命令source /home/oracle/.bash_profile让它生效。
11.创建相关目录:
mkdir /u01/app/oracle/oradata/orcl
mkdir /u01/app/oracle/admin/orcl
mkdir /u01/app/oracle/admin/orcl/adump
mkdir /u01/app/oracle/admin/orcl/bdump
mkdir /u01/app/oracle/admin/orcl/cdump
mkdir /u01/app/oracle/admin/orcl/udump
12.创建密码文件:
cd /u01/app/oracle/product/10.2.0/db_1/dbs
orapwd file=orapworcl password=oracle entries=10 force=y
13.创建参数文件:
cd /u01/app/oracle/product/10.2.0/db_1/dbs
cat init.ora|grep -v ^#|grep -v ^$>initorcl.ora
修改initorcl.ora文件,内容如下:
db_name=orcl
db_block_size=8192
undo_management=auto
undo_tablespace=undotbs
sga_target=500m
control_files=('/u01/app/oracle/oradata/orcl/control01.ctl','/u01/app/oracle/oradata/orcl/control02.ctl')
audit_file_dest='/u01/app/oracle/admin/orcl/adump'
background_dump_dest='/u01/app/oracle/admin/orcl/bdump'
core_dump_dest='/u01/app/oracle/admin/orcl/cdump'
user_dump_dest='/u01/app/oracle/admin/orcl/udump'
14.生成spfile文件,并启动到nomount状态:
sqlplus / as sysdba
create spfile from pfile;
startup nomount;
15.创建数据库:
CREATE DATABASE orcl
USER SYS IDENTIFIED BY oracle
USER SYSTEM IDENTIFIED BY oracle
LOGFILE GROUP 1 ('/u01/app/oracle/oradata/orcl/redo01a.log','/u01/app/oracle/oradata/orcl/redo01b.log') SIZE 300M,
GROUP 2 ('/u01/app/oracle/oradata/orcl/redo02a.log','/u01/app/oracle/oradata/orcl/redo02b.log') SIZE 300M,
GROUP 3 ('/u01/app/oracle/oradata/orcl/redo03a.log','/u01/app/oracle/oradata/orcl/redo03b.log') SIZE 300M
MAXLOGFILES 20
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 500
MAXINSTANCES 5
CHARACTER SET AL32UTF8
NATIONAL CHARACTER SET AL16UTF16
DATAFILE '/u01/app/oracle/oradata/orcl/system01.dbf'
SIZE 500M REUSE AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE '/u01/app/oracle/oradata/orcl/sysaux01.dbf'
SIZE 500M REUSE AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED
DEFAULT TABLESPACE users
DATAFILE '/u01/app/oracle/oradata/orcl/users01.dbf'
SIZE 500M REUSE AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED
DEFAULT TEMPORARY TABLESPACE temp
TEMPFILE '/u01/app/oracle/oradata/orcl/temp01.dbf'
SIZE 300M REUSE AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED
UNDO TABLESPACE undotbs
DATAFILE '/u01/app/oracle/oradata/orcl/undotbs01.dbf'
SIZE 200M REUSE AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED;
16.执行脚本:
sqlplus / as sysdba
@/u01/app/oracle/product/10.2.0/db_1/rdbms/admin/catalog;
@/u01/app/oracle/product/10.2.0/db_1/rdbms/admin/catproc;
@/u01/app/oracle/product/10.2.0/db_1/rdbms/admin/catblock;
@/u01/app/oracle/product/10.2.0/db_1/rdbms/admin/catoctk;
@/u01/app/oracle/product/10.2.0/db_1/rdbms/admin/owminst.plb;
sqlplus system
@/u01/app/oracle/product/10.2.0/db_1/sqlplus/admin/pupbld.sql;
17.进入数据库
sqlplus "/as sysdba"
SQL*Plus: Release 10.2.0.4.0 - Production on Sun Jun 14 14:02:35 2020
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
欢迎关注我的公众号 扫描二维码或公众号搜索 “我的工作”





