记录自己关于oracle 安装的记录,参考了很多网上的残卷,然后整理出来的。本来很少接触到数据库,有问题的部分欢迎大家指出,共同进步。
一、官方最低配置
内存:1G(官方最低要求1G)
硬盘:40G(企业版安装所需4.29G和1.7G数据文件)
二、 安装环境介绍
系统:Centos 7.4 64位 / MEM 4G /硬盘 40G
Oracle版本: Oracle 11g R2
官方下载
建议关闭selinux和firewall
oracle安装目录:/opt/app/oracle
ORACLE_HOME:/opt/app/oracle/product/11.2.0/db_1
DBNAME:orcl
SID:orcl
-
常见用户和组
groupadd -g 200 oinstall
groupadd -g 201 dba
useradd -u 440 -g oinstall -G dba oracle #(主组oinstall,其它组:dba)
passwd oracle -
修改内核参数
vim /etc/sysctl.conf # 编辑 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 # 使配置生效 -
修改系统资源限制
vim /etc/security/limits.conf # 编辑 limits.conf,末尾处添加下面的参数
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536 -
修改用户验证选项
vim /etc/pam.d/login找到这一行: session required pam_namespace.so ,在其下一行添加一条
session required pam_limits.so
5. 创建安装目录并分配权限
mkdir -p /opt/app/oracle/
chmod 755 /opt/app/oracle/
chown oracle.oinstall -R /opt/app/oracle/
- 设置Oracle环境变量
su - oracle # 切换到 oracle 用户
vim ~/.bash_profile # 编辑
注释掉最后两行,在末尾添加如下参数
export ORACLE_BASE=/opt/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export PATH=PATH:PATH:PATH:HOME/bin:$ORACLE_HOME/bin
export ORACLE_SID=orcl
export ORACLE_PID=ora11g
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
使配置生效
source ~/.bash_profile # 使配置立即生效
env | grep ORA # 查看环境变量是否完成
三、 安装及配置
-
切换到 root 用户,使用yum -y install 进行安装
yum -y install binutils compat-libcap1 compat-libstdc+±33 compat-libstdc+±33i686 compat-libstdc+±33.devel compat-libstdc+±33 compat-libstdc+±33*.devel gcc gcc-c++ glibc glibc*.i686 glibc-devel glibc-devel*.i686 ksh libaio libaio*.i686 libaio-devel libaio-devel*.devel libgcc libgcc*.i686 libstdc++ libstdc++.i686 libstdc+±devel libstdc+±devel.devel libXi libXi*.i686 libXtst libXtst*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686 -
安装Oracle
yum -y install unzip # 安装unzip,如已安装请忽略
将下载的Oracle压缩包放入/opt目录下(使用 FTP 工具或者直接在 CentOS 进行下载,下载地址开头有讲),在/opt目录下进行解压
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
解压后进入 database 目录,该目录下有三个 .rsp 文件,用来作为静默安装时的应答文件的模板。
三个文件作用分别是:
db_install.rsp:安装应答
dbca.rsp:创建数据库应答
netca.rsp:建立监听、本地服务名等网络设置的应答
cd /opt/database/response # 进入 response 目录
cp db_install.rsp db_install_copy.rsp # 备份
然后修改静默安装的配置文件
vim db_install.rsp # 编辑
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=oracledb
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/opt/app/oracle/oraInventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/opt/app/oracle/product/11.2.0/db_1
ORACLE_BASE=/opt/app/oracle
oracle.install.db.InstallEdition=EE
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=1500
oracle.install.db.config.starterdb.password.ALL=oracle
oracle.install.db.config.starterdb.storageType=FILE_SYSTEM_STORAGE
DECLINE_SECURITY_UPDATES=true //一定要设为 true
保存并退出
开始静默安装
su - oracle # 切换到 oracle 用户
cd /opt/database/ #进入/opt/database目录
./runInstaller -silent -force -responseFile /opt/database/response/db_install.rsp # 安装
如安装时报错swap,则查看swap空间大小
free -m // 如swap 大小为0,则需要分配空间给到swap
使用dd命令创建一个分区,如下命令:
dd if=/dev/zero of=/home/swap bs=1024 count=1048576
进行格式化交换,将swap文件格式化成s文件系统
mkswap /home/swap
使扩容的空间有效,命令如下
swapon /home/swap
将扩容的文件信息写入到 /etc/fstab 中,格式如下:
vi /etc/fstab
/home/swap swap swap defaults 0 0
结束后重新运行: ./runInstaller -silent -force -responseFile /opt/database/response/db_install.rsp
WARING]可暂时忽略,此时安装程序仍在后台进行,如果出现[FATAL],则安装程序已经停止了。
安装需要一会儿,如果想看安装进度,可以再打开一个窗口,输出会话日志
tail -f 日志文件(下图中红色框中为日志文件绝对路径)
当出现 Successfully Setup Software. 证明已经安装成功,然后根据提示以 root 用户执行脚本
sh /opt/app/oracle/oraInventory/orainstRoot.sh
sh /opt/app/oracle/product/11.2.0/db_1/root.sh
四、配置监听程序
监听命令
启动监听:lsnrctl start
停止监听:lsnrctl stop
重启监听:lsnrctl reload
查看监听:lsnrctl status
1、配置监听(使用oracle用户)
su - oracle # 切换到 oracle 用户
$ORACLE_HOME/bin/netca /silent /responseFile /opt/database/response/netca.rsp # 配置监听
2、查看监听(使用oracle用户)
snrctl status # 查看监听状态
3、静默dbca建库
su - root # 切换到 root 用户
vim /opt/database/response/dbca.rsp
修改如下内容:
GDBNAME = “orcl” # 78 行
SID=“orcl” # 149行
CHARACTERSET=“AL32UTF8” # 415行
NATIONALCHARACTERSET=“UTF8” # 425行
保存并退出
静默dbca建库
su - oracle # 切换到 oracle 用户
$ORACLE_HOME/bin/dbca -silent -responseFile /opt/database/response/dbca.rsp # 建库
执行完后会先清屏,清屏之后没有提示,直接输入oracle用户的密码,回车,再输入一次,再回车。
稍等一会,会开始自动创建
4、启动数据库
[oracle@oracledb ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on Mon Feb 16 14:26:57 2015
Copyright © 1982, 2009, Oracle. All rights reserved.
Connected to an idle instance.
SQL> start
SP2-1506: START, @ or @@ command has no arguments
SQL> startup
ORACLE instance started.
Total System Global Area 3290345472 bytes
Fixed Size 2217832 bytes
Variable Size 1795164312 bytes
Database Buffers 1476395008 bytes
Redo Buffers 16568320 bytes
Database mounted.
Database opened.
SQL>
使用 show parameter;或者 select table_name from dba_tables 看看是否正常
5、配置开机自动启动监听、启动Oracle
su - root # 切换到 root 用户
vim /etc/oratab # 编辑
其中:
*:/home/oracle/oracle92:N
这一行中 * 改为数据库的SID orcl, 第三段的N改为Y
改后如下:
orcl:/home/oracle/oracle92:Y 务必是大写的Y
保存并退出
vim /etc/rc.local # 编辑
在文件末尾增加如下内容
su - oracle -c ‘dbstart’
su - oracle -c ‘lsnrctl start’
保存并退出