一.本次实验环境:
硬件环境:1G内存 + 20G硬盘
软件环境:32BIT + WIN7 + CENTOS5(VMWARE)
网络环境:NAT + STATIC
二.所需源文件
ORACLE10g,PL/SQL,可以到如下链接获取:
Oracle10g: http://pan.baidu.com/s/1qW9ovEk 密码:ico3
Pl/sql:http://pan.baidu.com/s/1gdm6dbX 密码:z4o4
三.安装前准备
1.将Oracle安装文件拷贝到虚拟机
为了便于oracle用户执行安装程序,需解压缩文件到根用户子目录,切换至root身份,进入安装文件所在目录,我的就是在桌面,执行命令#unzip 10201_database_linux32.zip -d /media/CentOs完成。
如果无法直接在HOST & VMWARE中拖拽文件,点击虚拟机的Virtual Machine Settings->Options->VMware Tools,勾选右侧Synchronize guest time with host选项即可,有的时候从虚拟机拖拽到HOST有可能报错,请检查该文件所属用户及用户组。
2.以root身份安装下列包:
#yum install compat-db*
#yum install compat-libc*
#yum install compat-gcc*
#yum install compat-libstdc*
#yum install libXp.so.6
#yum install libc-*
#yum install libaio*
#yum install openmotif
#yum install libgcc*
#yum install gnome-lib*
#yum install binutils*
#yum install elfutils-libelf*
#yum install glibc*
#yum install gcc*
3.以root身份创建ORACLE用户和用户组
#export PATH=$PATH:/usr/sbin
#groupadd oinstall
#groupadd dba
#useradd -m -g oinstall -G dba oracle
#id oracle
4.设置密码
#passwd oracle
5.创建目录
#mkdir -p /data1/oracle
#mkdir -p /data1/oradata
#chown -R oracle:oinstall /data1/oracle /data1/oradata
#chmod 775 /data1/oracle /data1/oradata
6.修改内核参数
#cat > /etc/sysctl.conf <<EOF
>kernel.shmall = 2097152
>kernel.shmmax = 2147483648
>kernel.shmmni = 4096
>kernel.sem = 250 32000 100 128
>fs.file-max = 65536
>net.ipv4.ip_local_port_range = 1024 65000
>net.core.rmem_default = 262144
>net.core.rmem_max = 262144
>net.core.wmem_default = 262144
>net.core.wmem_max = 262144
>EOF
#
注意cat >> /etc/sysctl.conf << EOF 是append在原文件末尾,如果是修改文件应是cat > /et/sysctl.conf << EOF。
最好手工输入,如果是Append方式则有些值会重复,但是不影响,如果有必要可以把重复的值注释掉,这里,对每个参数值做个简要的解释和说明,
1)shmmax:该参数定义了共享内存段的最大尺寸(以字节为单位)。缺省为32M,对于oracle来说,该缺省值太低了,通常将其设置为2G。
2)shmmni:这个内核参数用于设置系统范围内共享内存段的最大数量。该参数的默认值是 4096 ,通常不需要更改。
3)shmall:该参数表示系统一次可以使用的共享内存总量(以页为单位)。缺省值就是2097152,通常不需要修改。
4)sem:该参数表示设置的信号量。
5)file-max:该参数表示文件句柄的最大数量。文件句柄设置表示在linux系统中可以打开的文件数量。
修改好内核以后,执行下面的命令使新的配置生效。
# /sbin/sysctl -p
7.修改系统版本号
#cat > /etc/redhat-release << EOF
>Red Hat Enterprise Linux AS release 3 (Taroon)
>EOF
#
8.修改hosts文件
#vi /etc/hosts
添加一行
192.168.222.129 orahost orahost
192.168.222.129 为本机IP,orahost 为本机域名,最后一个orahost为本机域名别名,可以不设。
PS:
此处的orahost应与HOSTNAME一致,否则通不过后面的检查,设置HOSTNAME在/etc/sysconfig/network中。
9.修改IP设置
#vi /etc/sysconfig/network-scripts/ifcfg-eth0,修改为静态IP。
# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
#DEVICE=eth0
#BOOTPROTO=dhcp
#DHCPCLASS=
#HWADDR=00:0C:29:F1:16:D1
#ONBOOT=yes
DEVICE=eth0
BOOTPROTO=static
HWADDR=00:0C:29:F1:16:D1
ONBOOT=yes
IPADDR=192.168.222.129
GATEWAY=192.168.222.2
此处重点关注IP地址和网关,可以到虚拟机中查看。打开虚拟机Edit->Virtual Network Editor->VMnet8,点击DHCP Settings,可以看到可用的IP范围192.168.222.128-192.168.222.254,填写IP地址时在此范围任选一个即可,但如果有多个虚拟机的话,注意不要重复了,点击NAT Settings可以看到网关地址192.168.222.2,填写网关地址时填写此网关地址即可。
修改完成后,执行如下命令使设置生效
#/sbin/service network restart
四.开始安装
以oracle身份登录linux本机,打开terminal,进入安装目录,执行安装程序
#./runInstaller
弹出安装界面,如果报x11错试着重启,并且检查之前的步骤是否正确。或者切换至root账户执行以下命令:
#xhost local:oracle non-network local connections being added to access control list
1)选择安装方法
图1.1 安装界面
安装选择如图所示,需要注意的是此处创建的数据库名为orcl,密码自己设置,需要记住,后面安装完成后需要用此密码登录数据库,当然如果不小心忘记也没有关系,有其他的方法可以解决。
注意如果安装程序起来后没有出现这个页面,很可能你的安装文件有问题,需要重新换一个。
点击Next进入下一步:
1)选择安装目录
图1.2 安装界面
点击Next进入下一步:
1)各种检查
图1.3 安装界面
如果此处不为0 requirements to be verified,请检查之前的步骤是否正确,点击Next进入下一步:
1)开始安装
图1.4 安装界面
点击Install,开始安装。
图1.5 安装界面
图1.6 安装界面
图1.7 安装界面
点击OK
图1.8 安装界面
按照提示以root在终端执行提示的两个脚本
#cd /data1/oradata/
#./orainstRoot.sh
#cd ../oracle
#./root.sh
看到提示Enter the full pathname of the local bin directory:[/usr/local/bin]:
敲击回车,执行完成后回到界面点击OK.
图1.9 安装完成界面
生成的几个网址可以记住,之后用WEB的方式访问,安装完成,点击Exit。
五.启动ORACLE
1.设置环境变量
#su oracle
#cd ~
#vi .bash_profile
添加如下几行
Export ORACLE_BASE=/data1
Export ORACLE_HOME=$ORACLE_BASE/oracle
Export PATH=$PATH:$ORACLE_HOME/bin
Export ORACLE_SID=orcl
编辑完成执行如下命令使编辑生效
#source .bash_profile
2.启动ORACLE实例
#sqlplus /nolog
SQL>conn sys/123456 as sysdba
此处account=sys,passwd=orcl123,这个密码是安装程序时填写的密码,连接成功后,执行命令
SQL>startup
启动一个Instance.因为我们设置的ORACLE_SID=orcl,所以这里启动的数据库是orcl,关闭实例用如下命令
SQL>shutdown immediate
退出数据库执行如下命令:
SQL>exit
3.开启监听器
为了能够让客户端连接上来,需要开启监听器,在这之前需要对监听器配置文件/data1/oracle/network/admin/listener.ora进行修改,我的内容如下:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /data1/oracle)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = orcl)
(ORACLE_HOME = /data1/oracle)
(SID_NAME = orcl)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = orahost)(PORT = 1521))
)
)
GLOBAL_DBNAME和SID_NAME都是安装的时候设置的,名为orcl,HOST为之前在/etc/hosts处添加的域名。
配置文件/data1/oracle/network/admin/tnsnames.ora也需作相应的修改,我的内容如下:
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = orahost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
如果之后客户端是用此处的拷贝,则需将拷贝文件中的orahost替换成服务端的IP.
#lsnrctl status //查看监听器状态
#lsnrctl start //如果监听器并未启动执行此命令启动
#lsnrctl stop //关闭监听器用此命令
4.用户名解锁及更新密码
启动数据库后执行如下命令:
SQL>alter user scott account unlock;
SQL>alter user scott identified by tiger;
5.关闭防火墙
#su root
#/sbin/service iptables stop
六.PL/SQL配置
1.安装
Window下的正常安装即可。
2.配置
A)下载一个oracle客户端,我这里解压到D:\Program Files\oracle10g-client,
B)下载一个sqlplus工具,同样解压到此目录,用于测试客户端和服务端之间是否已正常连接
C)从服务端拷贝两个文件tnsnames.ora和sqlnet.ora,如果不允许可以DIY,将tnsnames.ora中的HOST设置为远程主机的IP。
D)设置系统环境变量(Windows),TNS_ADMIN,值为ORACLE客户端安装目录。
3.启动PL/SQL
如果登录界面没有出现Connect as Normal选项,则还没有配置完成,点击Cancel进入主界面,点击Tools->Preference,如下图:
图2.1 PL/SQL Developer客户端配置界面
3.接下来先用sqlplus工具测试连接是否正常,前提保证服务端数据库和监听器都已经启动
图2.2 sqlplus测试客户端与服务端连接情况界面
连接成功,此时打开PL/SQL客户端,输入用户名和密码,
图2.3 PL/SQL Developer 登录界面
点击OK,显示scott@ORCL表面客户端登录成功!
图2.4 PL/SQL Developer 登录成功界面
附录A:
1.官方文档10.2安装:http://docs.oracle.com/cd/B19306_01/install.102/b15660/toc.htm
2.CentOs安装Oracle10g:http://www.cnblogs.com/mchina/archive/2012/11/06/2737472.html
http://wenku.baidu.com/view/9279f9da5022aaea998f0fca.html?re=view&qq-pf-to=pcqq.c2c
3.PL/SQL Developer安装:
http://blog.csdn.net/smstong/article/details/24359659
4.Windows访问远程Linux图形应用程序:
http://www.cnblogs.com/itech/archive/2010/02/23/1672137.html