1 本文目标
本文指导完成数据库服务oracle11g的搭建。
2 练习场景
- CentOS7系统中安装oracle11g
- oracle安装环境准备
- oracle安装
- oracle运行环境配置
3 oracle安装环境准备
3.1 oracle安装包及依赖环境文件准备
- 本文安装目录为系统根目录,根目录磁盘大小配置为30GB;
- 安装Oracle需要支持界面操作,最小安装CentOS不支持界面操作,建议使用CentOS桌面版(测试系统软件选择带GUI的服务器)。
- 软件获取:提取码: iunj中的数据库资源
3.2 root登录后创建用户名和相应组
主组oinstall,其它组:dba
groupadd oinstall
groupadd dba
添加用户
useradd -g oinstall -G dba oracle
设置密码
passwd oracle
输入密码
admin.123
3.3 修改内核参数
vi /etc/sysctl.conf
添加或修改以下内容
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
kernel.shmmni = 4096
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 = 1048576
使修改生效
sysctl -p
查看修改内容
sysctl -a | grep shm
4 修改用户限制
输入指令:vi /etc/security/limits.conf,添加或修改如下内容:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
5 目录和文件准备
1. 将rpm资源文件进行安装,如果有版本冲突可以先不安装,章节8.2的oracle安装程序会进行文件检查,步骤八会自动检查依赖是否解决,可以补充;因为涉及到文件较多,请勿强制安装更新,否则会导致环境异常。
2. 对于本机内安装文件版本,可以使用命令 rpm -qa | grep 依赖文件名称进行查看,本机会自带一些版本文件,不需要版本完全一致。
#rpm文件安装
rpm -ivh 文件名
#忽略依赖关系强制安装
rpm -ivh 文件名 --nodeps --force
6 用户名oracle用户登录
oracle安装文件准备:
linux.x64_11gR2_database_1of2.zip、 linux.x64_11gR2_database_2of2.zip 上传到用户名为oracle用户的某个目录下
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
解压文件得到database文件夹
7 防止安装界面中文乱码问题,输入指令
export LANG=en_US.UTF-8
8 开始安装
8.1 打开图形界面
这里使用虚拟机安装建议使用xstart进行图形界面的操作
#进入database目录内部
cd database
#运行安装命令
./runInstaller
8.2 图形界面操作
步骤一 不需要Emali和password,直接Next:
步骤二 Create and configuration a database:
步骤三 选择server class:
步骤四 Single instance database installation:
步骤五 Typical install:
步骤六 设置数据库安装基本信息,除了最下面部分的数据库名和密码,其余均可以采用默认值
#数据库名
orcl
#密码
admin.123
步骤七 设置目录:
步骤八 检查缺失的包和环境配置,这里需要多次调整依赖包,版本可以不一致;安装好后,点击图上的“Fix & Check Again”再次检查,在确保相关依赖包已安装的情况下,因为版本导致的问题可以忽略,选择右上角ignore all:
注:这里可能会提示kernel,sem配置不符合要求,提示需求值为128,实际为0,此问题可以忽略
步骤九 解决完依赖包和环境配置问题,执行此步骤:
步骤十 oracle安装程序运行中:
步骤十一 :
步骤十二:
步骤十三 安装完成:
9 图形界面安装完成后执行如下命令
su root
cd /home/oracle/app/oracle/product/11.2.0/dbhome_1
./root.sh
输入回车
cd /home/oracle/app/oraInventory
./orainstRoot.sh
10 修改主机名和ip
输入指令:hostname
得到 localhost.localdomain
#修改主机名称
vi /etc/sysconfig/network 修改如下
HOSTNAME= localhost.localdomain
#修改host文件 vi /etc/hosts
添加如下: 远程ip localhost.localdomain
11 监听配置
vi /home/oracle/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
#按照下图内容添加配置信息,将其中的HOST改为本机的对外主机名称【或者直接改为ip】
vi /home/oracle/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsname.ora
#修改tnsname.ora文件,将ip改为本机ip
#启动监听
lsnrctl start
12 配置环境变量
su oracle
vi /home/oracle/.bash_profile
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$PATH:$ORACLE_HOME/bin
#使配置生效
source /home/oracle/.bash_profile
13 实例启动
#oracle用户
#登录
sqlplus / as sysdba
#启动
startup
#停止
shutdown immediate
14 远程连接
关闭防火墙
su root
systemctl stop firewalld
systemctl status firewalld
sys用数据库的超级用户,数据库内很多重要的东西(数据字典表、内置包、静态数据字典视图等)都属于这个用户,sys用户必须以sysdba身份登录,所以我们这边用system用户进行登录
注:这里的sid名称要和监听文件中的service_name一致