[原创]打造完整的OracleDB学习环境 系统设置篇
[前言]
有了OS以后,接下来就要进行一番设置了。笔者在平日的工作中总能遇到有些同事耐不住性子,安装完OS以后,未作任何设置就急于开始安装数据库软件,其结果可想而知。
面对官方连篇累牍的安装文档,再加上全篇找不到一个汉字,很多人不禁望而生畏,这一点笔者是有切身体会的。为了最简化安装进程,本教程第二篇(系统设置篇)便应运而生。
你不妨稍稍耐住性子,完成这一步,基本上算是大功告成了。
本部分内容包括:
- 网络设置
- 系统设置
- 安装必要的支持软件包
- 创建用于数据库的用户
[实施]
当然是登录进去啦。
默认情况下,网络连接事未被打开的。点击屏幕右上角,画有两台计算机的那个网络图标(有红色实差的那个),可以看到System eth1是可以点击的。这里先这样放任不管,我们
通过另一种方法来设置。
接下来,就是命令行的世界啦。打开“终端”
切换到root
先把网络设置修改一下,以免我们每次都要通过手工的方式打开网络连接。
vi /etc/sysconfig/network-scripts/ifcfg-eth0
默认的初始设置如下:
把最后以行的设置改成”yes”
保存,退出
如法炮制,修改第二个网卡为静态IP地址。
为何要建立这块网卡呢?因为OracleDB的安装程序会检查系统中有无静态IP,如果没有会报警告的。
vi /etc/sysconfig/network-scripts/ifcfg-eth1
默认值:
修改后
保存,退出。这时你会看到网络的图标显示发生了改变。这说明刚才的设置已然生效。我们用ifconfig命令进行确认。
从返回结果可以看到,eth0拿到的是外网(公司,家庭,学校)上面DHCP分配来的IP地址,而eht1则是我们手工配置的静态IP
现在需要配置一下本地的默认DNS啦
vi /etc/hosts
将虚拟机的机器名称同本地的静态IP地址进行邦定
接下来,我们需要调整一下系统级的配置。
vi /etc/sysctl.conf
添加红色方框中的代码。
说明一下,这里面修改的东西都是系统级别的配置,主要是扩大系统默认的文件打开数量和内存使用限制等等。如果你没有十足的把握,请严格按照本文的方式设定。
fs.suid_dumpable = 1 fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 kernel.shmmax = 536870912 kernel.shmmni = 4096 # semaphores: semmsl, semmns, semopm, semmni kernel.sem = 250 32000 100 128 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default=4194304 net.core.rmem_max=4194304 net.core.wmem_default=262144
保存,退出。让我们看看修改是否成功
下面,轮到系统安全的设置了。
为我们稍候即将创建的用户添加以下设置
OK,接下来就是创建用户啦。
注:笔者这里使用的完全是官方文档中的设置方法,如果你有特殊需求,也可以根据自己的实际情况,使用自己满意的用户名或密码。
为了试验的方便,我们暂且关闭Linux的系统防火墙。
注:这个操作在比较正式的工业或者科研环境里是危险的,我们不能随便关闭之。如果你不清楚如何正确的设置,请联系你的网络管理员。
将“enforcing”改为“disabled”
创建安装路径,并设置权限
坚持!最后一步啦!这也是最麻烦的一步啦!
OracleDB的安装与运行,需要Linux里面的一些Package的支持,这些package只能通过我们手工的来安装。
但,好消息是Oracle Linux 的安装光盘上基本上已经收录了我们需要用到的所有Package。下面就让我们来载入ISO光盘
载入后,桌面上会出现光盘的图标,代表光盘已经被自动的mount了。
用红色方框中的命令进入光盘
使用RPM来安装软件包。在网上有一个广为流传的版本:
binutils-2.20.51.0.2-5.11.el6 (x86_64) compat-libcap1-1.10-1 (x86_64) compat-libstdc++-33-3.2.3-69.el6 (x86_64) compat-libstdc++-33-3.2.3-69.el6.i686 gcc-4.4.4-13.el6 (x86_64) gcc-c++-4.4.4-13.el6 (x86_64) glibc-2.12-1.7.el6 (i686) glibc-2.12-1.7.el6 (x86_64) glibc-devel-2.12-1.7.el6 (x86_64) glibc-devel-2.12-1.7.el6.i686 ksh libgcc-4.4.4-13.el6 (i686) libgcc-4.4.4-13.el6 (x86_64) libstdc++-4.4.4-13.el6 (x86_64) libstdc++-4.4.4-13.el6.i686 libstdc++-devel-4.4.4-13.el6 (x86_64) libstdc++-devel-4.4.4-13.el6.i686 libaio-0.3.107-10.el6 (x86_64) libaio-0.3.107-10.el6.i686 libaio-devel-0.3.107-10.el6 (x86_64) libaio-devel-0.3.107-10.el6.i686 make-3.81-19.el6 sysstat-9.0.4-11.el6 (x86_64)
笔者的实践证明还有一个更加简化的列表,贴在这里,仅供参考:(“TAB”表示按TAB键)
rpm -Uvh compat-libstdc++-3(TAB) rpm -Uvh compat-libcap1-1.10-1(TAB) rpm -Uvh kernel-headers-2(TAB) rpm -Uvh glibc-headers-2(TAB) rpm -Uvh glibc-devel-2(TAB) rpm -Uvh elfutils-libelf-devel-0(TAB) # For gcc rpm -Uvh mpfr-2.4.1-6(TAB) rpm -Uvh cpp-4.4.6-3(TAB) rpm -Uvh ppl-0(TAB) rpm -Uvh cloog-ppl-0(TAB) rpm -Uvh gcc-4(TAB) # For gcc-c++ rpm -Uvh libstdc++-devel(TAB) rpm -Uvh gcc-c++-4(TAB) rpm -Uvh libaio-devel-0(TAB) rpm -Uvh unixODBC-2(TAB) rpm -Uvh unixODBC-devel-2(TAB)
需要注意的是:官方推荐的KSH在版本上貌似有点问题,因此笔者强烈推荐使用
以下的package来代替:(找不到?!Google一下)
rpm -Uvh pdksh-5.2.14-21.i386.rpm
全部安装完成以后,让我们来试一下oracle这个用户
成功登录以后,本篇也就基本完成了。
最后要补充的一步就是,为了更简单的进行下一篇的学习,推荐大家提前将oracle这个用户的一些环境参数设置好,这样在进行下一篇的时候,就会非常顺利了。
vi /home/oracle/.bash_profile
默认的配置
在末尾添加以下代码
# Oracle Settings TMP=/tmp; export TMP TMPDIR=$TMP; export TMPDIR ORACLE_HOSTNAME=dbhost.testdomain; export ORACLE_HOSTNAME ORACLE_UNQNAME=orcl; export ORACLE_UNQNAME ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1; export ORACLE_HOME ORACLE_SID=orcl; export ORACLE_SID PATH=/usr/sbin:$PATH; export PATH PATH=$ORACLE_HOME/bin:$PATH; export PATH LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
重新启动,大功告成!辛苦辛苦!