安装笔记之Linux(centos7_1611)下安装Oracle_11g_R2 数据库
来源:互联网 发布:遗传算法英文版步骤 编辑:程序博客网 时间:2024/05/07 15:19
在LINUX(centos7_1611)上安装Oracle 11g R2数据库的安装笔记
######## 一、Oracle 11g R2数据库安装准备及环境配置 ########
LINUX系统必须在安装时勾选图形化界面(除非你使用静默的方式安装数据库,否则需要图形界面的支持)
1、centos 7 安装时基本环境选择gnome桌面 勾选
传统X Windows系统兼容性
兼容性程序库
开发工具
对于只安装了字符界面的系统,可以通过以下指令来安装X图形组件
yum makecache
yum grouplist
yum groupinstall 'X WindowSystem' -y
yum groupinstall 'GNOME Desktop Environment' -y
yum update
2、自动分配空间、配置网络 swap为内存的1-2倍
最小内存要求:1 GB
虚拟内存Swap容量要求:
当内存1-2G Swap设为1.5倍内存
当内存2-16G Swap设为与内存相同
当内存大于16G Swap设为16G
硬盘空间要求
数据库软件硬盘空间需求:
Enterprise Edition 3.95GB
Standard Edition 3.88GB
数据文件硬盘空间需求:
Enterprise Edition 1.7GB
Standard Edition 1.5GB
检查的命令
内存
# grep MemTotal /proc/meminfo
交换空间
# grep SwapTotal /proc/meminfo
磁盘空间
# df -ah
软件包检查
rpm -qa | grep 'rpm包名称'
设置一下网络,还有主机名如 oracle140
用root 登录主机
systemctl stop firewalld.service#停止firewall
systemctl disable firewalld.service#禁止firewall开机启动
关闭SELINUX
setenforce 0 先立即关闭
修改配置文件 vi /etc/selinux/config (在vi的命令状态下按/ 然后输入要查找的内容)
#SELINUX=enforcing (注销这行)
SELINUX=disabled (改为永久关闭)
:wq 保存
创建Oracle用户
root用户登录:创建Oracle安装组oinstall,数据库管理员组dba,及oracle用户
# /usr/sbin/groupadd oinstall
# /usr/sbin/groupadd dba
# /usr/sbin/useradd -g oinstall -G dba oracle(主组oinstall,其它组:dba)
# passwd oracle
修改HOSTS文件
修改HOSTS文件:/etc/hosts
127.0.0.1 localhost.localdomain localhosttest68
::1 localhost6.localdomain6 localhost6 test68
172.30.218.152 oracle140 (加入这一行,要与安装时填入的主机名一致 查看主机名:hostname)
root用户:修改 /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 = 1048586
为使上述配置生效而不重启系统,执行如下命令
# /sbin/sysctl -p
修改用户限制
root用户:修改 /etc/security/limits.conf 文件,加上下面的参数
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
修改用户验证选项
root用户下:修改/etc/pam.d/login文件加上如下参数
session required pam_limits.so
修改用户配置文件
root用户下:修改/etc/profile文件加入如下参数:
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
(注意代码里的空格,不能除掉空格否则会语法编译错误)
安装目录配置
root用户:# mkdir -p /u01/oraInventory (/u01/oraInventory 将用于ORACLE安装及数据库所在地,要保持这个目录为空,不然安装时会提示无法创建此目录。可以将网络存储挂载为/u01/)
# mkdir -p /u01/oraDisk (/u01/oraDisk 用于存放ORACLE安装文件)
# chown -R oracle:oinstall /u01/ (修改/u01目录为oracle拥有,组为oinstall)
# chmod -R 775 /u01/
挂载WINDOWS共享目录(通过CIFS协议)
mount -t cifs -o username=WindowsLogin,password=passwordinWindows //16.187.190.50/test /mnt/
root用户:
# mkdir -p /u01/oraInventory (/u01将用于ORACLE安装及数据库所在地,可以将网络存储挂载为/u01/)
# chown -R oracle:oinstall /u01/ (修改/u01目录为oracle拥有,组为oinstall)
# chmod -R 775 /u01/
修改oracle用户bash shell
$ vi .bash_profile (在oracle用户的主目录下 /home/oracle/)
增加如下内容,主要是修改
export ORACLE_BASE=/u01
export ORACLE_HOME=$ORACLE_BASE/oracle
export ORACLE_SID=orcl (这里要和安装时填入的oracle sid一致)
export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin
完成后执行:
#su –oracle 切换到oracle用户下执行下列操作
#env | grep ORA 查看环境变量是否完成 显示以下内容为正确:
ORACLE_SID=orcl
ORACLE_BASE=/u01
ORACLE_HOME=/u01/oracle
安装目录配置
如先创建一个目录放新的挂载 mkdir /mnt/emc
挂载 mount -t cifs -o username=mpguser,password=mpguser //172.30.218.180/center /mnt/emc
将安装文件从挂载的目录上复制到 /u01/oraDisk/下cp -r /mnt/emc/software/database/oracle/oracle_server/Linux_x64/oracle_11g_r2.11.0.40/p13390677_112040_Linux-x86-64_1of7.zip /u01/oraDisk/
cp -r /mnt/emc/software/database/oracle/oracle_server/Linux_x64/oracle_11g_r2.11.0.40/p13390677_112040_Linux-x86-64_2of7.zip /u01/oraDisk/
cd /u01/oraDisk/
解压
unzip linux.x64_11gR2_database_1of2
unzip linux.x64_11gR2_database_2of2
安装前的最后准备
回到图形化终端 并以oracle 登入终端
xdpyinfo |less (注意这里要临时切换到root用户。第一行中查看name of display: 冒号后面的数字 一般是0 记下来,然后填入下面)
xhost + (需要切换到root用户下执行,有时不用执行)
su - oracle
export DISPLAY=:0 (将上面得到的数字填入这里,注意有冒号)
export LANG=en (将环境设为英文。默认可能为zh_CH.UTF-8 因为在安装ORACLE 11g时的安装界面在中文环境下会乱码;如果要使用中文安装界面,则按后面介绍的方法解决中文方块字问题)
cd /u01/oraDisk/database/
./runInstaller(切换回oracle。切记要在oracle用户下执行,建议用下面带参数的命令执行,否则提示的弹窗可能显示不正常而无法进入下一步)
./runInstaller -jreLoc /usr/lib/jvm/jre-1.8.0(如果上面在安装中出现提示弹窗不显示问题请用这个方法安装)
安装完成前最后一步在root用户下 执行二个安装程序提示的的脚本
安装完成
######## 二、安装后启动数据库 ########
在root用户下 运行(这是为了在WEB上看到数据库状态,可以不运行)emctl start dbconsole 启动EM控制台
EM控制台启动成功,通过http://localhost:1158/em/来访问EM控制台。 进入EM控制台之后发现数据库实例和监听都是关闭状态。
启动数据库 (默认已启动)
sqlplus / as sysdba
startup
启动监听
在oralce用户下。要退出sqlplus(在sqlplus 下 直接exit)
lsnrctl start
额外内容:默认网络参数:监听
netmgr (配置监听服务,用于接受远程连接)
netca (配置本地监听,用于远程连接数据库)
创建用户
#sqlplus /nolog
SQL> conn / as sysdba;
SQL>create user {username} identified by {password};
SQL> grant dba to {username};
SQL> conn username/password
SQL> select * from user_sys_privs;
//创建临时表空间
create temporary tablespace bob_temp
tempfile '/u01/oradata/orcl/bob_temp.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local;
//创建数据表空间
create tablespace bob_data
logging
datafile '/u01/oradata/orcl/bob_data.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local;
//改变全局默认表空间
alter database default tablespace bob_data
######## 三、安装过程中碰到的问题 ########
Error in invoking target install of makefile /opt/oracle/product/9.2.0/network/lib/ins_oemagent.mk.
安装这个包
yum install glibc-devel.i686
安装完后不要继续安装,而要退出安装。之后将/u01目录删除 再重建/u01 之后再次运行安装程序
好像没有用。还要继续测试找办法。网上有人说这个问题可以直接忽略掉,安装结束后会自动修复。
1、安装时碰到问题
Error in invoking target 'agent nmhs' of makefile '/home/oracle_11/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk'.
解决过程
vi $ORACLE_HOME/sysman/lib/ins_emagent.mk
Search for the line
$(MK_EMAGENT_NMECTL)
Change it to:
$(MK_EMAGENT_NMECTL) -lnnz11
2、启动时碰到问题
startup
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/oracle/dbs/initorcl.ora'
解决方法:
将$ORACLE_BASE/admin/你的数据库名称/pfile/init.ora.628201264542(这串数字未必一样)
copy到$ORACLE_HOME/dbs/initorcl.ora目录下,并改名为你的数据库实例名即可。
3、安装时未通过高级安装选择中文字符集 造成中文无法显示
SQL> conn /as sysdba
SQL> shutdown immediate;
SQL> startup mount
SQL> ALTER SYSTEM ENABLE RESTRICTED SESSION;
SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0;
SQL> alter database open;
SQL> ALTER DATABASE CHARACTER SET ZHS16GBK;
ORA-12712: new character set must be a superset of old character set
提示我们的字符集:新字符集必须为旧字符集的超集,这时我们可以跳过超集的检查做更改:
SQL> ALTER DATABASE character set INTERNAL_USE ZHS16GBK;
--我们看到这个过程和之前ALTER DATABASE CHARACTER SET操作的内部过程是完全相同的,也就是说INTERNAL_USE提供的帮助就是使Oracle数据库绕过了子集与超集的校验.
SQL> shutdown immediate;
SQL> startup
以后安装oracle的时候记得选择自定义安装,把这个字符集的事情事先弄好。
——————————————————————————
利用yum的下载软件包的三种方法
——————————————————————————
有一个yum的插件叫downloadonly,顾名思义,就是只下载不安装的意思。
1、安装插件
yum install yum-download
2、
yum install packetname --downloadonly
下载后的包会放在这个目录:
/var/cache/yum/[i686或x86_64]/[系统版本号]/base/packages/
使用yum时只要yum install 包名 后面的版本和发行号可以不用写
对已下载的rpm包安装
rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm
-i :安装的意思 -v :可视化 -h :显示安装进度
——————————————————————————
解决安装界面显示方块字问题
——————————————————————————
使用网上下载字体zysong.ttf
#cd /usr/share/fonts
#mkdir -p ./zh_CN/TrueType
#cd ./zh_CN/TrueType
#cp ……../zysong.ttf ./
还可以在oracle用户下执行 export LC_ALL=en_US.UTF-8 (没试过)
——————————————————————————
解决重启后网卡没有自动打开
——————————————————————————
vi /etc/sysconfig/network-scripts/ifcfg-网卡名字
找到
ONBOOT=no 改为
ONBOOT=yes
######## 安装界面及步骤过程(图) ########
- 安装笔记之Linux(centos7_1611)下安装Oracle_11g_R2 数据库
- Oracle_11g_R2安装详解_for_Windows_7
- CentOS_6安装Oracle_11g_R2手记
- Oracle_11g_R2安装手册(图文教程)
- Oracle学习笔记安装篇之在Redhat Enterprise Linux 6.4 x86_64下安装Oracle12cR1数据库
- Oracle学习笔记安装篇之在Redhat Enterprise Linux 7.0 x86_64下安装Oracle12cR1数据库
- 学习笔记之Vmware中linux的安装(下)linux安装及配置
- linux下安装mysql数据库(3)
- Linux学习笔记----之----Linux下安装php-5.4.7
- linux下安装mysql数据库
- Linux下安装Oralce 数据库
- linux 下安装oracle数据库
- linux下安装mysql数据库
- linux下安装Mysql数据库
- linux下安装mysql数据库
- Linux下安装MySQL数据库
- Linux下安装MySQL数据库
- Linux 下安装数据库软件
- 如何在Ubuntu服务器上使用eclipse(如何在服务器上使用GUI程序)
- javascript 继承
- Activity的生命周期
- ROW_NUMBER()分析函数生成一个排序列
- 数据挖掘(9):BP神经网络算法与实践
- 安装笔记之Linux(centos7_1611)下安装Oracle_11g_R2 数据库
- 七牛云存储xcode更新为ios9使用七牛的ios sdk上传报错
- Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable an
- 简单计算器的实现
- python字典和列表各种嵌套排序
- 积跬步,聚小流------给图片加锚点
- SDK更新后 出现了NoClassDefFoundError错误
- Jsonp实现Ajax跨域Demo
- VS2010+openCV249播放AVI视频