CentOS7安装Oracle11g
一、环境准备
安装包:
1.VMware-workstation-full-10.1.0-2496824.exe
2.CentOS-7-x86_64-DVD-1511.iso(镜像文件)
3.linux.x64_11gR2_database_1of2.zip(官网下载 Linux版)
linux.x64_11gR2_database_2of2.zip(官网下载 Linux版)
4.Oracle依赖包
5.xshell(本机windows系统与Linux虚拟机进行文件传输)
6.JDK 1.7
第一步、 在VMware新建虚拟机
1. 点击“新建虚拟机”,进入“新建虚拟机向导”界面, 选择“自定义”,点击“下一步”
2.选择“稍后安装操作系统”,点击下一步
3.选择客户机操作系统“linux”,版本“CentOS 64位”,点击“下一步”
4.虚拟机名称为默认选项,选择虚拟机的安装位置,点击“下一步”
5.为虚拟机配置处理器,选择默认选项,点击“下一步”
6.给虚拟机分配内存,选择默认选项,点击“下一步”
7.选择网络类型,选择“使用网络地址转换(NAT)”,点击“下一步”
8.选择默认选项,点击“下一步”
9.选择默认选项,点击“下一步”
10.选择磁盘界面,选择“创建新虚拟磁盘”,点击“下一步”
11.指定磁盘容量,最大磁盘大小设为35.0g,选择“立即分配所有磁盘空间”,“将虚拟磁盘存储为单个文件”,点击“下一步”
12.指定存储磁盘文件,点击“下一步”
13点击“完成”,开始创建虚拟机
14.等待虚拟机创建完成
15.虚拟机创建完成,点击“虚拟机”à“设置”
16.点击CD/DVD(IDE),选择“使用ISO映像文件”选择本地的CentOS影响文件,点击“启动时连接”,点击“确定”
17.点击启动下拉框,选择“启动进入BIOS”
18.进入BIOS,Main的LegacyDiskette A, Legacy Diskette 值都改为“Disabled”(“--“)
19.Boot栏中,把CD-ROMDrive 列为第一,按“F10”退出BIOS
20,继续安装系统,选择“Install CentOS 7”
21.选择“中文”,“简体中文(中国)”
22.进入安装信息摘要界面,选择“键盘”,田间“英语(美国)”,点击“完成”
23.点击“软件选择”,选择“带GUI的服务器”,右栏所有附加项都勾选,点击“完成”
24.安装位置,选择默认,点击“完成”
25.选择“网络和主机名”,打开以太网,点击“完成”
26.所以安装信息都已经完成,点击“开始安装”
27.设置ROOT密码,点击“完成”
28.等待安装完成,点击重启。
第二步、 在VMware安装CentOs7linux操作系统
1. 配置相关依赖包及系统变量
① 系统及软件库更新(联网状态下执行)
② suroot(切换root用户)
③ yumupdate
④ yumupgrade
⑤ 创建运行oracle数据库的系统用户和用户组
[sonny@localhost ~]$ su root #切换到root
Password:
[root@localhost sonny]# groupadd oinstall #创建用户组oinstall
[root@localhost sonny]# groupadd dba #创建用户组dba
[root@localhost sonny]# useradd -g oinstall -g dba -m oracle #创建oracle用户,并加入到oinstall和dba用户组
[root@localhost sonny]# passwd oracle #设置用户oracle的登陆密码,不设置密码,在CentOS的图形登陆界面没法登陆
Changing password foruser oracle.
New password: # 密码
BAD PASSWORD: The password is shorter than 8 characters
Retype new password: # 确认密码
passwd:all authentication tokens updated successfully.
[root@localhost sonny]# id oracle # 查看新建oracle用户
uid=1001(oracle) gid=1002(dba) groups=1002(dba)
[root@localhost sonny]#
②.创建oracle数据库安装目录
[sonny@localhost ~]$ su root
Password:
[root@localhost sonny]# mkdir -p /data/oracle #oracle数据库安装目录
[root@localhost sonny]# mkdir -p /data/oraInventory #oracle数据库配置文件目录
[root@localhost sonny]# mkdir -p /data/database #oracle数据库软件包解压目录
[root@localhost sonny]# cd /data
[root@localhost data]# ls #创建完毕检查一(强迫症)
database oracle oraInventory
[root@localhost data]# chown -R oracle:oinstall /data/oracle#设置目录所有者为oinstall用户组的oracle用户
[root@localhost data]# chown -R oracle:oinstall /data/oraInventory
[root@localhost data]# chown -R oracle:oinstall /data/database
[root@localhost data]#
③.修改OS系统标识
修改文件 /etc/RedHat-release CentOS Linux release 7.2.1511 (Core) 改为
redhat-7
[root@localhost data]# cat /proc/version
Linux version 3.10.0-327.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.320140911 (Red Hat 4.8.3-9) (GCC) ) #1 SMP Thu Nov 1922:10:57 UTC 2015
[root@localhost data]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
[root@localhost data]# vi /etc/redhat-release
[root@localhost data]# cat /etc/redhat-release
redhat-7
[root@localhost data]#
④.安装oracle数据库所需要的软件包
操作系统:Oracle Linux 7 and Red HatEnterprise Linux 7
加查依赖包
yum–y install binutils compat-libstdc++-33elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-commonglibc-devel glibc-headers kernel-headers ksh libaio libaio-devel libgcc libgomp libstdc++libstdc++-devel make numactl-devel sysstat unixODBC unixODBC-devel
rpm –ivh xxxx.rpm --force --nodeps
binutils-2.23.52.0.1-12.el7.x86_64
compat-libcap1-1.10-3.el7.x86_64
gcc-4.8.2-3.el7.x86_64
gcc-c++-4.8.2-3.el7.x86_64
glibc-2.17-36.el7.i686
glibc-2.17-36.el7.x86_64
glibc-devel-2.17-36.el7.i686
glibc-devel-2.17-36.el7.x86_64
ksh
libaio-0.3.109-9.el7.i686
libaio-0.3.109-9.el7.x86_64
libaio-devel-0.3.109-9.el7.i686
libaio-devel-0.3.109-9.el7.x86_64
libgcc-4.8.2-3.el7.i686
libgcc-4.8.2-3.el7.x86_64
libstdc++-4.8.2-3.el7.i686
libstdc++-4.8.2-3.el7.x86_64
libstdc++-devel-4.8.2-3.el7.i686
libstdc++-devel-4.8.2-3.el7.x86_64
libXi-1.7.2-1.el7.i686
libXi-1.7.2-1.el7.x86_64
libXtst-1.2.2-1.el7.i686
libXtst-1.2.2-1.el7.x86_64
make-3.82-19.el7.x86_64
sysstat-10.1.5-1.el7.x86_64
[sonny@localhost data]$ su root
Password:
[root@localhost data]# yuminstall binutils
⑤.修改内核参数
红色部分为添加代码
[sonny@localhost /]$ su root
Password:
[root@localhost /]# vi /etc/sysctl.conf
[root@localhost /]# cat /etc/sysct.conf
cat: /etc/sysct.conf: No such file or directory
[root@localhost /]# cat /etc/sysctl.conf
# System default settings live in /usr/lib/sysctl.d/00-system.conf.
# To override those settings, enter new settings here, or in an/etc/sysctl.d/<name>.conf file
#
# For more information, seesysctl.conf(5) and sysctl.d(5).
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.all.rp_filter = 1
fs.file-max = 6815744 #设置最大打开文件数
fs.aio-max-nr = 1048576
kernel.shmall = 2097152 #共享内存的总量,8G内存设置:2097152*
#k/1024/1024
kernel.shmmax = 2147483648 #最大共享内存的段大小
kernel.shmmni = 4096 #整个系统共享内存端的最大数
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500 #可使用的IPv4端口范围
net.core.rmem_default = 262144
net.core.rmem_max= 4194304
net.core.wmem_default= 262144
net.core.wmem_max= 1048576
[root@localhost /]#
使配置参数生效
[root@localhost /]# sysctl -p
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.all.rp_filter = 1
sysctl: setting key "fs.file-max": Invalid argument
fs.file-max = 6815744 #设置最大打开文件数
fs.aio-max-nr = 1048576
sysctl: setting key "kernel.shmall": Invalid argument
kernel.shmall = 2097152 #共享内存的总量,8G内存设置:209715#2*4k/1024/1024
sysctl: setting key "kernel.shmmax": Invalid argument
kernel.shmmax = 2147483648 #最大共享内存的段大小
sysctl: setting key "kernel.shmmni": Invalid argument
kernel.shmmni = 4096 #整个系统共享内存端的最大数
kernel.sem = 25032000100128
sysctl: setting key "net.ipv4.ip_local_port_range": Invalid argument
net.ipv4.ip_local_port_range = 900065500 #可使用的IPv4端口范围
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
[root@localhost /]#
⑥.对oracle用户设置限制,提高软件运行性能(红色为添加部分)
[sonny@localhost /]$ su root
Password:
[root@localhost /]# vi /etc/security/limits.conf
[root@localhost /]# cat /etc/security/limits.conf
........
#* soft core 0
#* hard rss 10000
#@student hard nproc 20
#@faculty soft nproc 20
#@faculty hard nproc 50
#ftp hard nproc 0
#@student - maxlogins 4
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
# End of file
[root@localhost /]#
⑦.配置用户的环境变量(红色部分为添加代码),注:将文档中,原来的PATH注释掉
[root@localhost /]# vi /home/oracle/.bash_profile
[root@localhost /]# cat /home/oracle/.bash_profile
#PATH=$PATH:$HOME/.local/bin:$HOME/bin
#export PATH
export ORACLE_BASE=/home/oracle/app/oracle #oracle数据库安装目录
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1 #oracle数据库
export ORACLE_SID=orcl #oracle启动数据库实例名
export ORACLE_TERM=xterm #xterm窗口模式安装
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH #添加系统环境变量
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib #添加系统环境变量
export LANG=C #防止安装过程出现乱码
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK #设置Oracle客户端字符集,必须与Oracle安装时设置的字符集保持一致,如:ZHS16GBK,否则出现数据导入导出中文乱码问题
[root@localhost /]# source.bash_profile
使上述配置立即生效:
[oracle@localhost /]$ su root
Password:
[root@localhost /]# source /home/oracle/.bash_profile
[root@localhost /]#
2. 使用Xshell连接centos虚拟机
3. ①.进入命令行,查看虚拟机的IP地址。
②.在xshell上输入虚拟机IP地址,SSH2连接服务器,分别输入用户名和登录密码,进入xshell命令行。
③.点击xftp图标,进入xftp页面。
④.在左栏选择oracle压缩包,传输到/usr/local/src。
⑥ 在Xshell命令行里,在/usr/local/src下解压到/data/database
unziplinux.x64_11gR2_database_1of2.zip –d /data/database
unziplinux.x64_11gR2_database_2of2.zip –d /data/database
⑦ 在Xshell命令行里,进入/data/database/database,运行runInstaller,进入oracle图形界面安装
cddata/database/database
exportLANG=en_US_utf-8
./runInstaller
4. 图形界面安装
5. ①.进入oracle图形界面,取消“ I wish…”的选择。
②.点击“Yes”。
③.选择“createand configure a database”,点击“next”。
c
④.选择“server class”,点击“next”。
⑤.选择“singleinstance database installation”,点击“next”。
⑥.选择“Typicalinstall”,点击“next”。
⑧ .根据配置文件选择安装位置,填写密码,点击“next”。
⑨ .依赖包有错误,点击“next”。
⑩ .将报错的依赖包重新安装,完成后,选择“ignore All”, 点击“next”。
⑪ . 点击“finish”
⑫ 安装oracle
⑬ 继续安装,出现以下页面,依次点击ok
⑭ 跳转到需执行文件的目录下,执行需要执行的文件。点击ok
(正常情况下找到目录下文件,执行这个两个文件,下图示意一下)
⑮ 点击close,安装完成。
4. 启动Orcle数据库
执行命令 sqlplus / as sysdba
startup
配置监听 netca 图形界面安装 跟windows一样安装,不在赘述。
可能遇到问题:
⑯ 在安装中如果报以下的错误,根据错误提示去相应的位置中找到以下文件,
修改文件中的内容()
⑰ 如果出现ins_ctx.mk 错误请检查依赖包
⑱
如果安装出现ins_emagent.mk 错误,请按照页面提示路径找到ins_emagent.mk文件
将$(MK_EMAGENT_NMECTL)
替换为
$(MK_EMAGENT_NMECTL) -lnnz11
备注:这条语句在该文件中有两条,两条都需要按上述进行修修改
17客户端连接超时:
解决CentOS7关闭/开启防火墙出现Unit iptables.service failed toload: No such file or directory.
添加监听器的端口:1522
会报错Failed to start iptables.service: Unit iptables.service failed toload: No such file or directory.
在CentOS7或RHEL 7或Fedora中防火墙由firewalld来管理,
如果要添加范围例外端口 如 1000-2000
语法命令如下:启用区域端口和协议组合
firewall-cmd [--zone=<zone>]--add-port=<port>[-<port>]/<protocol>[--timeout=<seconds>]
此举将启用端口和协议的组合。端口可以是一个单独的端口 <port> 或者是一个端口范围 <port>-<port> 。协议可以是 tcp 或 udp。
实际命令如下:
添加
firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
firewall-cmd --zone=public --add-port=1000-2000/tcp --permanent
重新载入
firewall-cmd --reload
查看
firewall-cmd --zone= public --query-port=80/tcp
删除
firewall-cmd --zone= public --remove-port=80/tcp --permanent
启动服务监听(重启系统注意是否启动服务与监听)
Source /home/oracle/.bash_profile
su - oracle 切换到oracle用户模式下
sqlplus /nolog //登录sqlplus
SQL> connect /as sysdba //连接oracle
SQL> startup //起动数据库
SQL> exit //退出sqlplus,起动监听
cd $ORACLE_HOME/bin //进入oracle安装目录
lsnrctl start //起动监听