近期想做一个Oracle表空间管理的工具,在搭建开发环境的过程中遇到不少麻烦并一一解决,现进行整理和分享,希望能够帮助同道中人。本人在最后一个问题上卡了很久,解决之后比较兴奋,决定重建环境重现问题作为本篇资料。
一 Linux操作系统安装
1
2
3
4
5
6 虚拟机名称和位置可以自行修改
7
8 内存调为2048
9 因为想给虚拟机分配固定的ip,所以下面选择了桥接网络
10
11
12 磁盘大小根据自己需要调整
13
14
---------------------------下面进入虚拟机安装环节-------------------------------------------------
15 进入新建好的虚拟机标签页面,点击CD/DVD
16 选择好操作系统iso文件,点击确定
17 点击开启此虚拟机
18 通过上下键选中 Install CentOS 7,点击Enter键
19
20 此处INSTALLATION DESTINATION 有黄色警示,点击进入设置
21 点击DONE
22 返回后点击Begin Installation
23 点击ROOTPASSWORD设置root密码
24 设置密码后点击DONE
25 等待安装完毕
26 安装完成,点击Reboot重启
二 网络配置问题
1 root用户登录
2 查看当前网络情况并配置
ifconfig
由于centos没有默认安装net-tools,故使用ifconfig命令报错。
还是先配好静态网络,连上网后再用yum命令安装ifconfig和其他包或工具。
ip a
ip a命令显示了网卡信息,其中ens33为本地网络,现准备对其编辑,但ip,掩码,网关,dns怎么配呢?
由于安装虚拟机时选择了桥接网络,桥接网络使用宿主机物理网卡,故虚拟机的网络配置需参考物理网卡网络信息。由下图可看到物理网卡对应以太网
因此将虚拟机网络配置过程如下:
备份
编辑
(需手敲,哈哈),注:图中最后一行末尾是光标。
重启网络并测试
网络已配通
注意,网络连通后便用宿主机的xshell连接服务器,后面oracle图形化安装界面也是从xshell启动。
3 修改主机名
vi /etc/hosts
4 安装net-tools,telnet
三 Oracle安装、数据库创建
1 修改内核参数 vi /etc/sysctl.conf
kernel.shmall = 2097152
kernel.shmmni = 4096
kernel.shmmax = 4124575744
kernel.sem = 250 32000 100 128
fs.file-max = 6815744
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 1048576
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
2 修改资源限制 vi /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
3 创建用户组、用户、目录
添加组oinstall和dba:
groupadd oinstall
groupadd dba
添加用户oracle:
useradd -g oinstall -G dba -m oracle
修改oracle用户密码:
passwd oracle
创建目录并赋权:
mkdir -p /u01/app/oracle/product/11.2.0/db_1
mkdir -p /u01/app/oracle/oradata
mkdir -p /u01/app/oraInventory
mkdir -p /u01/app/oracle/fast_recovery_area
chown -R oracle.oinstall /u01/app/oracle
chown -R oracle.oinstall /u01/app/oraInventory
chmod -R 755 /u01/app/oracle
配置oracle环境变量,注意此处ORACLE_SID=orcl,可根据自己情况起名字,其他配置颇为固定
#su - oracle
$vi .bash_profile
unset LANG
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_HOME_LISTNER=$ORACLE_HOME
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/libi:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export NLS_LANG=AMERICAN_AMERICA.UTF8
$source .bash_profile
配置完回至root用户
$exit
4 用xftp上传Oracle安装包并解压
上传
#mkdir -p /softwares
解压,过程中发现未安装unzip,用yum安装即可
奋力解压
给Oracle赋权
# chown -R oracle /softwares
5 安装Oracle依赖包
首先修改yum 源,不然使用yum安装依赖包的过程会比较慢
#yum -y install wget
#cd /etc/yum.repos.d/
#mkdir repo_bak
#mv *.repo repo_bak/
#wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
清除yum缓存
#yum clean all
重新缓存
#yum makecache
安装epel源
#yum install -y epel-release
正式安装oracle依赖包
#yum -y install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers glibc-static kernel-headers pdksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel libstdc++-static make numactl-devel sysstat unixODBC unixODBC-devel
6 安装Oracle
用oracle用户登录centos(注意,此处又是一坑,不能用root用户su到oracle,不然会有问题,作者入坑一次)
此处错误需要做两个事情解决,一个是配置DISPLAY变量,一个是安装xdpyinfo
$export DISPLAY=192.168.1.113:0.0
这个IP即宿主IP
$su - root
#yum -y install xdpyinfo
#exit
$./runInstalller
能顺利走到这一步已经很不容易了,胜利在望,继续加油
7 数据库安装
不接收安全通知
不更新
先不创建数据库
pdksh是一个老包了,新的oracle都使用ksh包了,但是oracle的check机制里面并没有把这个check去掉,所以在执行界面安装oracle的时候,还会有告警信息,我们可以忽略掉它,然后看看ksh有没有安装,如果没有安装就安装ksh,用ksh就可以。
此处报错,用如下方式解决
不用中断安装过程,进入另一个oracle用户窗口
$cd $ORACLE_HOME/sysman/lib
$cp ins_emagent.mk ins_emagent.mk.bak
$vi ins_emagent.mk
进入vi编辑器后,命令模式输入/NMECTL进行查找,快速定位要修改的行在后面追加参数-lnnz11,第一个是字母l,后面两个是数字1
保存退出回到oracle图形安装界面
用root执行以上两个脚本
至此已oracle安装完毕
------------------------------------------------------------------开始安装数据库-------------------------------------------------------------
运行dbca
$dbca
---------------------------------------------------------创建数据库监听--------------------------------------------------------------------------
$netca
创建本地网络服务
安装完毕
四 数据库连接
现测试连接