linux下安装Oracle11G数据库

安装环境

centos7 64位系统

安装准备:

主机配置:至少 1G内存 5G硬盘大小
将oracle的压缩文件拷贝到主机/usr/local/目录下并解压
本文oracle压缩安装文件解压路径为/usr/local/database(以下都是以此路径为例)
oracle压缩包名称(分为两个压缩包):

  1. linux.x64_11gR2_database_1of2.zip
  2. linux.x64_11gR2_database_2of2.zip
cd /usr/local/
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
# 解压后直接解压成database文件夹,压缩包内的所有文件都会在目录里面,如果和本文压缩包不一致,则需自己创建database目录(命令:mkdir /usr/local/database)

步骤:

1.修改主机名,及ip对应关系

设置主机名

sed -i "s/HOSTNAME=localhost.localdomain/HOSTNAME=ora1/g" /etc/sysconfig/network

使用下面命令,使当前生效

hostname ora1

添加主机名与IP对应记录

vi /etc/hosts
# 在文件末尾追加以下内容
服务器IP  ora1
2.关闭Selinux
sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config
setenforce 0
3.修改内核参数
vi /etc/sysctl.conf
# 在文件末尾追下以下内容
net.ipv4.ip_local_port_range= 9000 65500
fs.file-max = 6815744
kernel.shmall = 10523004
kernel.shmmax = 6465333657
kernel.shmmni = 4096
kernel.sem = 250 32000 100128
net.core.rmem_default=262144
net.core.wmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_max=1048576
fs.aio-max-nr = 1048576

保存退出后输入sysctl -p使配置生效

sysctl -p
4.修改用户的限制文件
vi /etc/security/limits.conf
# 在文件后追加以下内容
 oracle           soft    nproc           2047
 oracle           hard    nproc           16384
 oracle           soft    nofile          1024
 oracle           hard    nofile          65536
 oracle           soft    stack           10240
5.修改/etc/pam.d/login
vi /etc/pam.d/login
# 在文件末尾追加如下:
session  required   /lib64/security/pam_limits.so
session  required   pam_limits.so
6.创建用户及组
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba -m oracle
passwd oracle
# 然后会让你输入密码,密码任意输入2次,但必须保持一致,回车确认
7.创建oracle相关目录(目录可自己选择)
# 创建安装目录
mkdir -p /oracle/product
# 数据文件存放目录
mkdir -p /oracle/oradata
# 数据恢复目录
mkdir -p /oracle/recovery_area
# 数据库创建及使用过程中的日志目录
mkdir -p /oracle/oraInventory
# 修改安装目录权限
chown -R oracle:oinstall /oracle
chmod 775 /oracle
8.编辑 /etc/profile
vi /etc/profile
# 按i键进入编辑模式,将下列内容追加在文件末尾

if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
  ulimit -p 16384
  ulimit -n 65536
else
  ulimit -u 16384 -n 65536
fi

fi

# 编辑完成后按Esc键,输入“:wq”存盘退出
9.登录oracle用户,设置环境变量
su - oracle
vi .bash_profile
# 在文件末尾追加以下内容

# oracle的安装目录,可参考之前创建目录的层级关系
export ORACLE_BASE=/oracle
export ORACLE_HOME=$ORACLE_BASE/product
export PATH=$PATH:$ORACLE_HOME/bin
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib64:/usr/lib64:/usr/local/lib64
# 重点:记住此名字,在之后安装数据库更改文件的时候SID应该与其一致
export ORACLE_SID=orcl11g
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

保存之后source .bash_profile使设置生效

source .bash_profile
10.安装oracle依赖包

登录root用户,安装依赖包,一定要确认所有依赖包都安装完毕。

su - root
yum -y install gcc gcc-c++ make binutilscompat-libstdc++-33 elfutils-libelf elfutils-libelf-develglibc glibc-commonglibc-devel libaio libaio-devel libgcclibstdc++libstdc++-devel unixODBC unixODBC-devel ksh
11.修改配置文件db_install.rsp,并安装(在解压数据库response目录下)

(如所有路径与本文不同,则以下内容涉及到路径的请自行修改)
以下命令请一条条执行。

sed -i "s/oracle.install.option=/oracle.install.option=INSTALL_DB_SWONLY"/g /usr/local/database/response/db_install.rsp

sed -i "s/ORACLE_HOSTNAME=/ORACLE_HOSTNAME=ora1"/g /usr/local/database/response/db_install.rsp

sed -i "s/UNIX_GROUP_NAME=/UNIX_GROUP_NAME=oinstall"/g /usr/local/database/response/db_install.rsp

sed -i "s#INVENTORY_LOCATION=#INVENTORY_LOCATION=/oracle/oraInventory"#g /usr/local/database/response/db_install.rsp

sed -i "s/SELECTED_LANGUAGES=/SELECTED_LANGUAGES=en,zh_CN"/g /usr/local/database/response/db_install.rsp

sed -i "s#ORACLE_HOME=#ORACLE_HOME=/oracle/product"#g /usr/local/database/response/db_install.rsp

sed -i "s#ORACLE_BASE=#ORACLE_BASE=/oracle"#g /usr/local/database/response/db_install.rsp

sed -i "s/oracle.install.db.InstallEdition=/oracle.install.db.InstallEdition=EE"/g /usr/local/database/response/db_install.rsp

sed -i "s/oracle.install.db.DBA_GROUP=/oracle.install.db.DBA_GROUP=dba"/g /usr/local/database/response/db_install.rsp

sed -i "s/oracle.install.db.OPER_GROUP=/oracle.install.db.OPER_GROUP=oinstall"/g /usr/local/database/response/db_install.rsp

sed -i "s/oracle.install.db.config.starterdb.storageType=/oracle.install.db.config.starterdb.storageType=FILE_SYSTEM_STORAGE"/g /usr/local/database/response/db_install.rsp

sed -i "s#oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=#oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=/oracle/oradata"#g /usr/local/database/response/db_install.rsp

sed -i "s#oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=#oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=/oracle/recovery_area"#g /usr/local/database/response/db_install.rsp

sed -i "s/DECLINE_SECURITY_UPDATES=/DECLINE_SECURITY_UPDATES=true"/g /usr/local/database/response/db_install.rsp
12.登录oracle用户,执行安装
su - oracle
cd /usr/local/database/
# 路径自行修改(必须要绝对路径)
./runInstaller -silent -responseFile /usr/local/database/response/db_install.rsp

安装过程中,如果提示[WARNING]不必理会,此时安装程序仍在进行,如果出现[FATAL],则安装程序已经停止了。
打开另一个终端,执行以下命令可以实时跟踪查看安装日志,了解安装的进度。

tail -f /oracle/oraInventory/logs/installActions......log

当出现以下内容说明已安装成功,则需要按提示操作,操作完返回Enter成功

/**
配置脚本需要以 “root” 用户的身份执行。
!/bin/sh
要运行的 Root 脚本
/XXX/XXX/oracle/product/11.2.0/db_1/root.sh (xxx为自己的路径)
要执行配置脚本, 请执行以下操作:
1.打开一个终端窗口
2.以 “root” 身份登录
3.运行脚本
4.返回此窗口并按 “Enter” 键继续
Successfully Setup Software.
/

在这里插入图片描述

13.切换oracle用户,配置监听配置文件response/netca.rsp
su - oracle
# 路径自行修改(必须要绝对路径)
netca /silent /responsefile /usr/local/database/response/netca.rsp

//当出现以下内容,则配置成功
/**
正在对命令行参数进行语法分析:
参数"silent" = true
参数"responsefile" = /oracle/response/netca.rsp
完成对命令行参数进行语法分析。
Oracle Net Services 配置:
完成概要文件配置。
Oracle Net 监听程序启动:
正在运行监听程序控制:
/oracle/11.2.0/bin/lsnrctl start LISTENER
监听程序控制完成。
监听程序已成功启动。
监听程序配置完成。
成功完成 Oracle Net Services 配置
/

//完成后通过命令“netstat -tlnp”可以查看到1521端口已开
tcp 0 0 :::1521 ::: * LISTEN 5477/tnslsnr

14.修改配置文件response/dbca.rsp,静默建立新库,只需要修改以下几处即可(路径自行修改)
su - root
# 编辑文件,显示行号
cd /usr/local/database
vi response/dbca.rsp
:set nu
# 提示:
# 1.修改配置之后,如果配置前面有“#”号的,需要把“#”号删除,否则将会作为注释
# 2.可以使用:n 命令跳转行数

GDBNAME = "orcl11g"  # 大致在文件第78行处
SID = "orcl11g"    # 应的实例名字 ,此处与之前oracle环境变量中对应,大致在文档第149行处
DATAFILEDESTINATION = /oracle/oradata # 数据文件存放目录,大致在文档第357行处
RECOVERYAREADESTINATION = /oracle/recovery_data # 恢复数据存放目录,大致在文档第367行处
CHARACTERSET = "AL32UTF8"   # 字符集,大致在文档第415行处
TOTALMEMORY = "5120"    # oracle内存5120MB,大致在文档第540行处
15.配置完之后,执行命令
su - oracle
dbca -silent -responseFile /usr/local/database/response/dbca.rsp (如非与本文路径一致,则路径自行修改)
(如果是使用Xshell工具,可能会出现工具bug,要求输入密码提示会看不到,此时等待大概30秒左右,如果没有别的提示,直接输入两次密码,第一次输入的是sys密码,输入完后要回车,第二次输入的是system密码,输入完之后也要回车,输入完毕之后不需要操作,直接等待进度条。)
输入两次密码之后等待配置,如下图 

在这里插入图片描述

16.完成后数据库实例就算创建好了,接下来启动数据库
su - oracle
# 启动监听
lsnrctl start
# 开启数据库
[oracle@gpdb ~]$ sqlplus /nolog
SQL> conn /as sysdba;
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP MOUNT;
SQL> ALTER DATABASE OPEN;
17.关闭数据库时要正常关闭,否则可能会造成数据库启动异常

首先登录数据库,然后停止数据库,最后关闭监听程序

sqlplus /nolog
SQL> conn /as sysdba;
SQL> SHUTDOWN IMMEDIATE;
exit
lsnrctl stop
18.修改数据库字符编码方法
[oracle@gpdb ~]$ sqlplus /nolog

SQL> conn /as sysdba;

SQL>select userenv('language') from dual;

SQL>SHUTDOWN IMMEDIATE

SQL>STARTUP NOMOUNT

SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;

SQL>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;

SQL>ALTER SYSTEM SET AQ_TM_PROCESSES=0;

SQL>ALTER DATABASE OPEN;

SQL>ALTER DATABASE CHARACTER SET INTERNAL_USE ZHS16GBK;

SQL>SHUTDOWN IMMEDIATE;

SQL>STARTUP;

SQL>select userenv('language') from dual;

# 常见的Oracle字符集有ZHS16GBK、AL32UTF8、US7ASCII  AMERICAN_AMERICA.AL32UTF8等
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值