本文介绍了Linux下Oracle最简单的安装方式(图形界面安装),适合初学者。
第一章 首先要知道Oracle适合哪些Linux?我们采用CentOS 4,因为它等同于RHEL4。
安装Linux
安装CentOS4非常简单不详细说了。记得要设置下交换分区 。
注意关闭防火墙,免得麻烦。
安装包(以下两个是必须的)
把Oracle安装包传到linux服务器
可以用SecureCRT自带的Z-Modem搞定!(sz or rz)
第二章 预安装工作
打开安装文档《Oracle Database Installation Guide 10g Release 2 (10.2) for Linux x86.pdf》,来到第2章
Ø 以root用户登录
Ø 硬件要求至少1024MB内存,Linux要有交换分区(物理内存的1-2倍)。
Ø 检查必需包
用以下命令来查询,发现第一个包已经装了。
若发现没有装的包, 如sysstat:
从CentOS安装光盘上去找过来用“rpm -ivh”安装:
后面会发现libaio.xx.xxx.rpm也是必须的,在这里装上。
所有软件包检查完毕,进入下一步。
Ø 创建用户和组
查看是否存在Oracle用户,没有新建个
我们一般在根目录下建立个u01目录,然后再建个名为oracle的目录(约定俗成,当然你可以建立其他的名称的目录)。然后建立oracle用户,用户目录为/u01/oracle,主组为oinstall,副组为dba和oper。
设个密码先
默认情况下,u01以及子目录都归root所有,我们要把权限改为oracle用户所有,-R是递归的意思。chown –R oracle:oinstall /u01
查看下,没问题!可以自由出入了。
检查nobody用户是否存在,应该要存在的。
Ø 配置内核参数
1. 打开/etc/sysctl.conf文件,添加如下内容:(vi编辑器直接可以用p命令粘贴)
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 = 1048576
net.core.rmem_max = 1048576
net.core.wmem_default = 262144
net.core.wmem_max = 262144
2. 打开/etc/security/limits.conf文件,添加如下内容:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
3. 打开/etc/pam.d/login,添加如下内容:
session required /lib/security/pam_limits.so
session required pam_limits.so
4.若用的是非CShell,如BShell等,添加如下内容到/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
Ø 配置oarcle用户环境变量
ORACLE_BASE=/u01/oracle
ORACLE_SID=数据库的SID 这里是wilson,待会儿创建数据库的时候,SID要统一。
export ORACLE_BASE ORACLE_SID
unsetenv ORACLE_HOM
unsetenv TNS_ADMIN
退出!要是配置文件生效的话,先退出oracle用户在进入即可。当然也可以用 . ~/bash_profile命令来执行配置文件。
检验下是否已经生效?
重启下Linux,使内核参数生效!
第三章,安装工作正式开始!
Ø 解压缩Oracle安装包,我们解压到 /u01中。
解压后改变下database目录属性,把所有权交给oracle用户
Ø 进入X界面,运行runInstaller,安装
选择高级安装,都按默认的吧,然后会发现libaio包还是被检测出来有问题,不管了,版本高就行了。OracleHome为/u01/oracle/product/10.2.0/db_1
Yes!安装!只安装软件,数据库
Ø 最后的用户环境设置
开始的时候没有Oracle_home和Tns_name两个环境变量
先设置ORACLE_HOME,记得要Export下,然后重新登录。
第四章,创建一个数据库.
Ø 运行dbca命令打开图形界面,开始创建数据库
Linux中启动( oralce 10g) dbca时,
# su - oracle
$ dbca
提示Xlib:connection to ":0.0" refused by server
Xlib: No protocol specified
执行:
#xhost local:oracle
再运行$ dbca
若重启系统后,要运行dbca,需要再次允许 #xhost local:oracle 。
Global Database Name是唯一表示一个数据库的,而SID是一个数据库的引用,名字可以和GDN不同,多个SID可以引用同一个数据库。
字符集要正确!
开始创建数据库,等待中…
Ø 配置网络,执行netca启动配置程序
检查下防火墙是否阻挡。setup命令。
配置host,可以用server的IP或者在/etc/hosts中修改主机名对应的IP
命令:vi /etc/hosts
然后再启动listener,命令lsnrctl start
客户端配置
我们切换到XP下来进行客户端配置。当然前提你是已经在XP下安装过客户端了。
注意不是配置监听程序,我们配置第三个,本地net服务,用来连接Oracle服务器。
接下来可以测试下。若不成功的话改下用户名密码,检查下server的listener状态。Lsnrctl status。
一些lsnrctl下的命令,此处的“listener”是监听器的名字。
附 录
SID: 系统标识符,可以理解为你所连接的一个数据库实例的名称。数据库实例标示,也就是数据库实例的名称,在控制面板-管理工具-服务,打开这个文件,你可以看到一个OracleServicexxx,其中 "xxx ",就是你的数据库实例的名称也就是sid.
TNS:Transparence Network Substrate,透明网络底层。一般是用它提供的监听服务.数据连接字符串,代表一个数据库的连接,配置好你的数据网络连接,就会有一个这样的串。这个串可以在你的oracle安装根目录\ora92\network\admin\tnsnames.sql里面找到,你要可以在你的oracle安装目录下查找这个文件,
orac =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = cyl)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = D7i)
)
)
上面的 "orac ",就是你要的tns,你可以自己复制重写一个tns,把HOST指向你的数据库服务器IP, SERVICE_NAME =你的数据库sid
一些命令: