一、安装数据库时可能遇到的故障现象以及解决思路
1.安装界面出现乱码
解决思路:
- 可以使用一个临时的编码 LANG=en_US ./runInstaller
- 网上下载一个字体包
2.安装的时候提示
OUI-10182:The effective user ID does not match the owner of the file, or the process is not the super-user; the system indicates that super-user privilege is required.
解决办法:
- 原因:安装目录没有权限导致
- 赋予权限即可chown -R oracle:oinstall /opt
chmod -R 777 /opt
3.安装完成后如果出现找不到initorcl.ora文件
解决办法:
- 复制/opt/app/oracle/admin/orcltest/pfile/init.ora.330…复制到initorcl应该在的目录,即可
4.出现memory_max_target
解决办法:
- 显示memory_target不支持这个系统,重启服务器即可
5.重中之重
Redhat7中安装oracle,默认是只安装数据库软件,里面没有任何数据库,需要使用dbca进行创建安装数据库,才会有对应的一堆目录,如admin等等,从而找到initorcl.ora
二、安装过程
首先配置yum仓库
这里我们使用阿里提供的镜像文件
wget -O /etc/yum.repo.d/centos.repo http://mirrors.aliyun.com/repo/Centos-7.repo sed -i 's/$releasever/7/g' /etc/yum.repo.d/centos.repo yum clean all
一、操作系统
red hat 7.2
oracle数据库版本
11.2.0.4
对应的文件
Oracle_11gR2_linux.x64_database_1of2.zip
Oracle_11gR2_linux.x64_database_2of2.zip
IP地址规划:
DNS server:192.168.81.2
IP地址:192.168.81.200
二、基本配置
1、修改主机名称:
vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.82.2 test
vi /etc/hostname配置文件
localhost.localdomain改为test
或
hostnamectl set-hostname <计算机名>
2、动态IP修改为静态IP
cd /etc/sysconfig/network-scripts/
BOOTPROTO=“static” #dhcp改为static
3、修改网卡配置:
#vim /etc/sysconfig/network-scripts/ifcfg-ens33 TYPE=Ethernet BOOTPROTO=static DEFROUTE=yes DEVICE=ens32 ONBOOT=yes IPADDR=192.168.81.200 NETMASK=255.255.255.0 GATEWAY=192.168.81.2 DNS1=192.168.81.2
如果网卡末配置DNS,可以在resolv.conf文件配置
#vim /etc/resolv.conf nameserver 192.168.81.2
重启一下网卡:
systemctl restart network.service
4、直接关闭防火墙
systemctl stop firewalld.service #停止firewall systemctl disable firewalld.service #禁止firewall开机启动
5、关闭selinux
#vim /etc/sysconfig/selinux 修改文件 SELINUX=disabled 临时关闭 #setenforce 0
三、软件环境配置
1、oracle必备的开发工具
#yum -y install glibc \glibc-devel \ glibc-headers \ libaio \ libaio-devel \ libgcc \ libstdc++ \ libstdc++-devel \ make \ sysstat \ unixODBC \ unixODBC-devel \ pdksh \ compat-libcap1 \ compat-libstdc++-33 \ elfutils-libelf-devel \ gcc \ gcc-c++ \ smartmontools \ pdksh \ compat-libstdc \ cvuqdisk
如果交换空间不够可以用下面命令来增加:
dd if=/dev/zero of=/test bs=1G count=4 mkswap -f /test swapon /test free -m
2、修改操作系统核心参数
在Root用户下执行以下步骤:
1)修改用户的SHELL的限制,修改/etc/security/limits.conf文件
输入命令:vi /etc/security/limits.conf,按i键进入编辑模式,将下列内容加入该文件。
vim /etc/security/limits.conf oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536
2)修改/etc/pam.d/login 文件,输入命令:vi /etc/pam.d/login,按i键进入编辑模式,将下列内容加入该文件。
vim /etc/pam.d/login session required pam_limits.so
3)修改linux内核,修改/etc/sysctl.conf文件,输入命令:vi /etc/sysctl.conf ,按i键进入编辑模式,将下列内容加入该文件
#vim /etc/sysctl.conf fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 1073741824 kernel.shmmax = 4398046511104 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 = 1048586
注:sysctl.conf文件里有下面两个参数,记得注释掉
#kernel.shmmax#kernel.shmall
使sysctl生效
#sysctl -p
3、创建oracle用户及组
#groupadd oinstall //创建安装组 #groupadd dba //创建管理组 #mkdir -p /opt/app #useradd -g oinstall -G dba oracle //创建运行用户(此处oracle使用默认家目录/home/oracle,所以没有用-d指家目录的) #passwd oracle //设置oracle用户的密码
修改目录权限:
#chown -R oracle:oinstall /opt/app #chmod 755 -R /opt/app
将准备好安装包:p13390677_112040_Linux-x86-64_1of7-data1.zip p13390677_112040_Linux-x86-64_2of7-data2.zip放到oracle用户目录下,使其属主与属组为oracle:oinstall,并解压四、安装oracle 11.2.0.4软件
切换到oracle用户下(以oracle用户登录系统):
1)配置oracle用户的环境变量
[oracle@test ~]$ vim .bash_profile #.bash_profile #Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bashrc fi #User specific environment and startup programs PATH=$PATH:$HOME/.local/bin:$HOME/bin export PATH export ORACLE_SID=orcl export ORACLE_BASE=/opt/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1 export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib export PATH=/opt/app/oracle/product/11.2.0/dbhome_1/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin export PATH=$ORACLE_HOME/bin:$PATH:/sbin/ LANG=zh_CN.UTF-8; export LANG NLS_LANG='AMERICAN_AMERICA.AL32UTF8'; export NLS_LANG #LANG=en_US.utf8; export LANG NLS_LANG='AMERICAN_AMERICA.AL32UTF8'; export NLS_LANG
2)开始安装
#su - oracle $ export DISPLAY=ip:0.0 //ip为你本机ip $ xhost + $ export LANG=zh_CN.UTF-8 $ unzip Oracle_11gR2_linux.x64_database_1of2.zip $ unzip Oracle_11gR2_linux.x64_database_1of2.zip $ cd database $ ./runInstaller
若需要安装界面是中文:
系统的编码设为utf8,不是oracle数据库的编码集,不需设置为16GBK
#vi .bash_profile
LANG=zh_CN.UTF-8; export LANG
NLS_LANG=‘SIMPLIFIED CHINESE_CHINA.AL32UTF8’; export NLS_LANG
添加中文语言包
#mkdir -p /usr/share/fonts/zh_CN/TrueType 将zysong.ttf文件放至/usr/share/fonts/zh_CN/TrueType目录中 chmod 777 usr/share/fonts/zh_CN/TrueType/zysong.ttf
在解压database运行安装脚本,这里和安装grid一样,启动安装向导
我们这里只安装数据库软件,点击next
![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/20190507105607700.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDk1MzY1OA==,size_16,color_FFFFFF,t_70
![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/20190507105627927.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDk1MzY1OA==,size_16,color_FFFFFF,t_70
这里选择集群安装方式,有以下3种选项之一:
选择安装单实例数据库软件,点击下一步
选择产品语言,简体中文及英语,点击下一步
选择数据库版本,默认企业版,点击下一步
配置Oracle安装目录,由于安装前环境变量的配置,安装程序自动读取配置,自动选择好了Oracle基目录(Oracle Base)和软件位置(Software Location),如图所示,点击Next
同上,产品清单目录(Oracle Inventory Directory)也自动选择好了,点击Next
保持默认,点击Next
安装检查中
检测完后点安装
在root用户下执行下面两个脚本,执行完点OK
安装完成
五、数据库建库
1) 输入命令dbca会弹出如下界面
创建库
选择一般用途或事务处理
配置全局数据库名及SID
将配置Enterprise Manager对勾取消
配置四个内置超级管理员密码,建议统一密码,便于记忆用
内存分配(勾选使用自动内存管理)
指定字符集
创建数据库点完成
过漫长的等待,当看到此界面,说明oracle建库完成
六、安装监听
1)输入命令netca 会弹出如下界面。创建监听服务(充当oracle服务器,让别的oracle客户端连接本oracle服务器)
2)配置本地网络服务名(充当oracle客户端,连接别的oracle服务器)
完成
最后使用lsnrctl start开启监听程序即可
这样oracle服务器安装配置基本就完成了,查看oracle家目录下已经有listener.ora和tnsnames.ora两个文件