Linux-centos7_64位静默安装Oracle 11g并增加表空间及用户

目录

一、安装准备

1.系统环境

2.Oracle安装包

二、安装过程

1.配置yum源

2.安装所需依赖包

3.检查依赖是否安装完整

4.添加oracle用户组和用户

5.添加完成后,查看oracle用户

6.初始化oracle用户的密码

7.配置hostname

8.优化OS内核参数

9.限制oracle用户的shell权限

10.创建oracle安装目录

11.创建 vi /etc/oraInst.loc

12.授权

13.配置oracle用户环境变量

14.解压oracle安装文件到 /data

15.登录Root,复制授权

16.登录Oracle配置安装文件

17.开始安装

18.使用root用户执行脚本

19.增加或修改oracle的环境变量

20.配置监听程序

21.静默dbca建库

22.设置Oracle开机启动

23.通过dbstart、dbshut 启停oracle

24.登录Oracle

25.创建表空间及用户


一、安装准备

Oracle安装相对复杂,遇到问题多百度,综合大家的文档解决问题。

1.系统环境

CentOS7.6操作系统,64位

2.Oracle安装包

安装包:linux.x64_11gR2_database_1of2.zip 和 linux.x64_11gR2_database_2of2.zip。截至目前,Oracle官网已经将此版本下架,因此需要找其他资源获取安装包。

链接: https://pan.baidu.com/s/19eVTlscBX-2YKgwzRAA0MQ

提取码: r2rr

登录root用户:su - root

1.配置yum源

cd /etc/yum.repos.d
mv CentOS-Base.repo CentOS-Base.repo.bak
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all
yum makecache

2.安装所需依赖包

yum -y install binutils \
compat-libstdc++-33 \
elfutils-libelf \
elfutils-libelf-devel \
expat \
gcc \
gcc-c++ \
glibc \
glibc-common \
glibc-devel \
glibc-headers \
libaio \
libaio-devel \
libgcc \
libstdc++ \
libstdc++-devel \
make \
ksh \
sysstat \
unixODBC \
unixODBC-devel

3.检查依赖是否安装完整

rpm -q \
binutils \
compat-libstdc++-33 \
elfutils-libelf \
elfutils-libelf-devel \
expat \
gcc \
gcc-c++ \
glibc \
glibc-common \
glibc-devel \
glibc-headers \
libaio \
libaio-devel \
libgcc \
libstdc++ \
libstdc++-devel \
make \
ksh \
sysstat \
unixODBC \
unixODBC-devel

4.添加oracle用户组和用户

groupadd oinstall
groupadd dba
groupadd asmadmin
groupadd asmdba
useradd -g oinstall -G dba,asmdba oracle -d /home/oracle

5.添加完成后,查看oracle用户

id oracle

6.初始化oracle用户的密码

passwd oracle

7.配置hostname

# 1.编辑 /etc/hosts 文件
vi /etc/hosts

# 2.将如下信息添加至文件中,此处的 192.168.44.4 换成你自己的本机 IP
192.168.44.4 oracle

# 3.测试 hostname
ping -c 4 oracle

8.优化OS内核参数

# 1.修改 /etc/sysctl.conf 文件
vi /etc/sysctl.conf

# 2.添加如下内容。其中,kernel.shmmax 参数设置为物理内存的一半
fs.aio-max-nr=1048576
fs.file-max=6815744
kernel.shmall=2097152
kernel.shmmni=4096
kernel.shmmax = 17179869184
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

# 3.使配置的参数生效
sysctl -p

9.限制oracle用户的shell权限

# 1.限制 oracle 用户的文件权限
# 1.1修改 /etc/security/limits.conf 文件
vi /etc/security/limits.conf

# 1.2.在末尾添加
oracle    soft    nproc    2047
oracle    hard    nproc    16384
oracle    soft    nofile    1024
oracle    hard    nofile    65536
oracle    soft    stack    10240
oracle    hard    stack    10240
 
# 2.限制 oracle 登录权限
# 2.1修改 /etc/pam.d/login 文件
vi /etc/pam.d/login

# 2.2在末尾添加,如已有则修改
session  required   /lib64/security/pam_limits.so
session  required   pam_limits.so
 
# 3.指定 oracle 用户使用的 shell ,修改 /etc/profile 文件
vi /etc/profile
 
# 3.1文件末尾添加
if [ $USER = "oracle" ]; then
    if [ $SHELL = "/bin/ksh" ]; then
        ulimit -p 16384
        ulimit -n 65536
    else
        ulimit -u 16384 -n 65536
    fi
fi
 
# 3.2使修改的配置生效
source /etc/profile

10.创建oracle安装目录

mkdir -p /data/app/oracle/product/11.2.0
mkdir /data/app/oracle/oradata
mkdir /data/app/oracle/oraInventory
mkdir /data/app/oracle/fast_recovery_area
chown -R oracle:oinstall /data/app/oracle
chmod -R 775 /data/app/oracle

11.创建 vi /etc/oraInst.loc

inventory_loc=/data/app/oracle/oraInventory
inst_group=oinstall

12.授权

chown oracle:oinstall /etc/oraInst.loc
chmod 664 /etc/oraInst.loc

13.配置oracle用户环境变量

登录oracle用户:su - oracle

# 1.家目录编辑变量文件
vi /home/oracle/.bash_profile

# 2.末尾添加以下内容 
export ORACLE_HOSTNAME=oracle
export ORACLE_BASE=/data/app/oracle
export ORACLE_SID=ORCL
export LC_ALL="en_US"
export LANG="en_US"
export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"
export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"

# 3.以上配置完成后,执行以下命令
source /home/oracle/.bash_profile

14.解压oracle安装文件到 /data

# 上传linux.x64_11gR2_database_*of2.zip文件至/data/目录,解压后的两个目录会自动合并
# 如oracle用户无法上传文件,可使用root用户上传后再授权给oracle用户,chown -R oracle:oinstall /data/database
cd /data/
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip

15.登录Root,复制授权

登录root用户:su - root

mkdir /home/oracle/etc/
cp /data/database/response/* /home/oracle/etc/
chmod 777 /home/oracle/etc/*.rsp

16.登录Oracle配置安装文件

登录oracle用户:su - oracle

# 1.编辑安装文件
vi /home/oracle/etc/db_install.rsp

# 2.查找并修改如下信息:
# 注意 starterdb.memoryLimit 的值按照实际情况填写,建议为物理内存的一半,单位M
oracle.install.option=INSTALL_DB_SWONLY
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/data/app/oracle/oraInventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOSTNAME=oracle
ORACLE_HOME=/data/app/oracle/product/11.2.0/db_1
ORACLE_BASE=/data/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.isCustomInstall=true
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=oinstall
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
oracle.install.db.config.starterdb.globalDBName=orcl
oracle.install.db.config.starterdb.SID=orcl
oracle.install.db.config.starterdb.memoryLimit=5210
oracle.install.db.config.starterdb.password.ALL=oracle
DECLINE_SECURITY_UPDATES=true

17.开始安装

# 1.安装,注意:如上面的配置不对,则此步骤会报错。如报错请仔细检查前面的配置,再来执行此安装命令。
cd /data/database/response/
./runInstaller -silent -force -responseFile /home/oracle/etc/db_install.rsp -ignorePrereq

# 2.安装期间可以使用tail命令查看oracle的安装日志 
tail -f /data/app/oracle/oraInventory/logs/installActions2021-02-25_10-38-29AM.log

# 3.安装完成,会提示Successfully Setup Software.

18.使用root用户执行脚本

登录root用户:su - root

# 执行脚本
/data/app/oracle/product/11.2.0/db_1/root.sh

19.增加或修改oracle的环境变量

登录oracle用户:su  - oracle

# 1.编辑oracle用户变量
vi /home/oracle/.bash_profile

# 2.末尾添加如下内容
export ORACLE_HOME=/data/app/oracle/product/11.2.0/db_1
export TNS_ADMIN=$ORACLE_HOME/network/admin
export PATH=.:${PATH}:$HOME/bin:$ORACLE_HOME/bin
export PATH=${PATH}:/usr/bin:/bin:/usr/local/bin
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/lib
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
export LIBPATH=${CLASSPATH}:$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib
export ORACLE_OWNER=oracle
export SPFILE_PATH=$ORACLE_HOME/dbs
export ORA_NLS10=$ORACLE_HOME/nls/data

# 使配置生效
source /home/oracle/.bash_profile

20.配置监听程序

# 1.配置监听程序
[oracle@oracle bin]$ cd /data/app/oracle/product/11.2.0/db_1/bin
[oracle@oracle bin]$ ./netca /silent /responseFile /home/oracle/etc/netca.rsp

# 2.启动监控程序
[oracle@oracle bin]$ lsnrctl start

21.静默dbca建库

# 1.编辑应答文件
[oracle@oracle ~]$ vi /home/oracle/etc/dbca.rsp
GDBNAME="orcl" 
SID="orcl"
SYSPASSWORD = "oracle" 
SYSTEMPASSWORD = "oracle" 
CHARACTERSET="AL32UTF8" 
NATIONALCHARACTERSET="UTF8"

# 2.执行命令建库,达到100%即创建数据库实例成功
$ORACLE_HOME/bin/dbca -silent -responseFile /home/oracle/etc/dbca.rsp

# 3.删除实例命令
[oracle@oracle ~]$ $ORACLE_HOME/bin/dbca -silent -deleteDatabase -sourcedb orcl

22.设置Oracle开机启动

[oracle@oracle bin]$ vi /etc/oratab
orcl:/data/app/oracle/product/11.2.0/db_1:Y  # //把“N”改成“Y”

23.通过dbstart、dbshut 启停oracle

[oracle@oracle bin]$ cd /data/app/oracle/product/11.2.0/db_1/bin
# 通过dbstart 启动监听器
[oracle@oracle bin]$ ./dbstart $ORACLE_HOME;
# oracle的进程关闭,监听器也停止
[oracle@oracle bin]$ ./dbshut $ORACLE_HOME;
# 启动监听
[oracle@oracle bin]$ ./lsnrctl start;
# 查看监听
[oracle@oracle bin]$ ./lsnrctl status;

24.登录Oracle

# 1.登录oracle
[oracle@oracle bin]$ cd /data/app/oracle/product/11.2.0/db_1/bin
[oracle@oracle bin]$ ./sqlplus /nolog

# 2.进入系统管理用户
SQL> conn / as sysdba
Connected to an idle instance.

# 3.启动oracle实例
SQL> startup;

25.创建表空间及用户

# 1.登录oracle
su - oracle
sqlplus / as sysdba

# 2.查询现有的表空间
SELECT t.tablespace_name, round(SUM(bytes / (1024 * 1024)), 0) ts_size   
FROM dba_tablespaces t, dba_data_files d   
WHERE t.tablespace_name = d.tablespace_name   
GROUP BY t.tablespace_name;   
# 3.创建表空间
CREATE TABLESPACE TEST DATAFILE '/data/app/oracle/oradata/orcl/user01.dbf' SIZE 500m autoextend on next 50M maxsize unlimited;   

# 4.创建用户和密码并指定表空间,用户oracle,密码oracle
CREATE USER oracle IDENTIFIED BY oracle DEFAULT TABLESPACE ORACLE;   
  
# 5.给oracle用户权限赋予
GRANT CONNECT,DBA,RESOURCE TO oracle;

25.注意事项

1.创建的oracle用户可以使用工具连接了,但没有系统权限,需要根据自己的需求添加。

2.此文档亲测可用,我安装过程中没有遇到特殊问题,但不保证各位朋友也不会遇到问题。

3.之前项目用的全是MySQL,因此本人对Oracle了解有限,如有疏漏,请各位多指正。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

哈哈灾难

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值