引言
买了一本SQL优化的书籍,想着深入一下Mysql的,没曾想书中讲的大多数都是oracle的,故而学习下oracle,本次学习的数据库对象为11gR2版。
安装准备
安装包获取
oracle数据库,毫无疑问是oracle公司的产品,直接在[官网]下载即可(https://www.oracle.com)
下载链接 https://www.oracle.com/cn/database/enterprise-edition/downloads/oracle-db11g-linux.html
注意oracle11gR2版,安装包为两个包
- linux.x64_11gR2_database_1of2.zip
- linux.x64_11gR2_database_2of2.zip
服务器
本次采用linux操作系统发行版centos7-Minimal(无图形界面)的服务器进行安装,机器配置要求
内存:不小于4g(2g安装时,运行内存不足,会导致失败)
硬盘内存:不小于50g,磁盘空间太小意义不大
开始安装
- 将安装包上传至服务器
- 关闭防火墙
操作用户:root
systemctl status firewalld (防火墙状态)
systemctl stop firewalld (关闭防火墙)
- 安装依赖包
操作用户:root
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
- 验证依赖包
操作用户:root
rpm -q binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel
正常所有包都会显示已安装,自己注意是否有未安装的包
- 创建oracle用户与用户组
操作用户:root
groupadd oinstall
groupadd dba
groupadd oper
useradd -u 502 -g oinstall -G dba,oper -m oraclezyc
passwd oraclezyc 设置用户密码
创建成功之后需要验证下:
id oraclezyc
输出如下提示,说明用户与权限设置成功(这一步必须成功,因为后面需要在相关用户下进行操作)
uid=1001(oraclezyc) gid=1001(oinstall) groups=1001(oinstall),1002(dba),504(oper)
6. 创建oracle数据库安装目录
操作用户: root
mkdir -p /data/oracle #oracle数据库安装目录
mkdir -p /data/oraInventory #oracle数据库配置文件目录
mkdir -p /data/database #oracle数据库软件包解压目录
创建成功后对目录授权:cd /data
chown -R oraclezyc:oinstall /data/oracle #设置目录所有者为oinstall用户组的oraclezyc用户
chown -R oracle:oinstall /data/oraInventory
chown -R oracle:oinstall /data/database
- 解压Oracle安装包
操作用户:root
安装包为.zip格式解压需要用到unzip这个命令,若机器上不存在此命令,需要下载 yum install unzip -y
操作用户 oraclezyc
unzip linux.x64_11gR2_database_1of2.zip -d /data/database/oracle_db
unzip linux.x64_11gR2_database_2of2.zip -d /data/database/oracle_db
为防止安装目录没有权限,chown -R oraclezyc:oinstall /data - 修改系统配置
操作用户:root
vim /etc/security/limits.conf
在文件的末尾添加如下配置项
oraclezyc soft nproc 2047
oraclezyc hard nproc 16384
oraclezyc soft nofile 1024
oraclezyc hard nofile 65536
oraclezyc soft stack 10240
- 修改环境变量
操作用户: oraclezyc
vim ~/.bash_profile
在文件末尾添加如下配置项
export PATH
export ORACLE_BASE=/data/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0.1/dbhome_1
export ORACLE_SID=orcl
export ORACLE_UNQNAME=prod
export NLS_LANG=.AL32UTF8
export PATH=${PATH}😒{ORACLE_HOME}/bin/:$ORACLE_HOME/lib64
使得环境变量生效
source ~/.bash_profile
- 修改oracle配置文件
操作用户: oraclezyc
增加这一步是为了避免在原有的配置文件上做修改
cp -r /data/database/oracle_db/database/response/db_install.rsp /data
编辑db_install.rsp文件
vim /data/db_install.rsp
修改的相关配置项
oracle.install.option=INSTALL_DB_AND_CONFIG
ORACLE_HOSTNAME=localhost #实际上可以修改成你自己的主机名或者域名(IP)
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/data/oraInventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/data/oracle/product/11.2.0.1/dbhome_1
ORACLE_BASE=/data/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=oper
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
oracle.install.db.config.starterdb.globalDBName=prod
oracle.install.db.config.starterdb.SID=orcl
oracle.install.db.config.starterdb.characterSet=AL32UTF8
oracle.install.db.config.starterdb.memoryOption=true
oracle.install.db.config.starterdb.memoryLimit=1024
oracle.install.db.config.starterdb.installExampleSchemas=false
oracle.install.db.config.starterdb.password.ALL=123456 #也可不设置
oracle.install.db.config.starterdb.control=DB_CONTROL
oracle.install.db.config.starterdb.dbcontrol.enableEmailNotification=false
oracle.install.db.config.starterdb.dbcontrol.emailAddress=test@qq.com #可以填写你自己的邮箱地址
oracle.install.db.config.starterdb.automatedBackup.enable=false
oracle.install.db.config.starterdb.storageType=FILE_SYSTEM_STORAGE
oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=/data/oracle/data
oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=/data/oracle/fast_recovery_area
oracle.install.db.config.starterdb.automatedBackup.enable=false
DECLINE_SECURITY_UPDATES=true
- 安装数据库
操作oraclezyc
cd /data/database/oracledb/database下 执行命令
./runInstaller -silent -ignoreSysPrereqs -responseFile /data/db_install.rsp -ignorePrereq
执行后耐心等待。。。
等出现如下提示,即安装完成
/data/oraInventory/orainstRoot.sh
/data/oracle/product/11.2.0.1/dbhome_1/root.sh
To execute the configuration scripts:
1. Open a terminal window
2. Log in as "root"
3. Run the scripts
4. Return to this window and hit "Enter" key to continue
Successfully Setup Software.
最后一步:根据提示执行脚本
/data/oraInventory/orainstRoot.sh
/data/oracle/product/11.2.0.1/dbhome_1/root.sh
不建议将oracle设置为开机自启,启动命令:
1. source /home/oraclezyc/.bash_profile
2. lsnrctl start
3. sqlplus /nolog
4. conn /as sysdba
5. startup