<安装Oracle所需的RPM包>
查看缺少那些包:#rpm -q gcc make binutils openmotif
缺少的包可以到RedHat Enterprice Linux 5.4安装程序里面找到
*注意:一些包可能存在依赖关系,这时就要耐心地找出依赖包,一个个地安装
<配置系统参数>
找到文件/etc/sysctl.conf 在文件的末尾添加如下内容:
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 # 应用程序可使用的IPv4端口范围。
net.core.rmem_default = 1048576 # 套接字接收缓冲区大小的缺省值
net.core.rmem_max = 1048576 # 套接字接收缓冲区大小的最大值
net.core.wmem_default = 262144 # 套接字发送缓冲区大小的缺省值
net.core.wmem_max = 262144 # 套接字发送缓冲区大小的最大值
运行以下命令使得内核参数生效:
#/sbin/sysctl -p
<修改limits.conf文件参数> (/etc/security/limits.conf)
在文件末尾s添加如下内容:
* soft nproc 2047
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536
<修改login文件>(/etc/pam.d/login)
在文件末尾加上如下内容:
session required /lib/security/pam_limits.so
<关闭selinux>(/etc/selinux/config)
把secure linux设成无效:
SELINUX=disabled
<修改hosts文件>(/etc/hosts)
加上如下内容:(可参考127.0.0.1那条配置)
你的ip地址 主机名 localhost (例如:192.168.1.2 computer localhost)
(删除127.0.0.1那条,*注意删掉后,会衍生一个问题,就是xstart连不上,需要用到xstart时可以手动加回去就行了)
<修改系统版本>(/etc/redhat-release)
将RedHat Enterprise Linux Server release 5.4 (Tikanga) 中5.4 该为4(安装成功后再改为5.4)
<新增组和用户>
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
<创建安装目录并授权给oracle用户>
mkdir -p /u01/app/oracle/product/10.2.0/db_1
chown -R oracle.oinstall /u01
<修改.bash_profile文件> (这个文件是在你创建的oracle用户的根目录下)
在文件末尾加入如下内容:
# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1; export ORACLE_HOME
ORACLE_SID=orcl; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=$PATH:$ORACLE_HOME/bin; export PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JREORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
*这里不得不提醒的是上面那段程序,语法特别的恶心,[ ]这种符号左右两边都得有空格
<为安装文件授权>
将安装文件解压到/tmp目录下,并授使用权
#chmod -R 775 /tmp/database
<开始安装Oracle 10g>
在root用户下打开一个终端执行以下操作:
#xhost + (不必理会出现的提示信息)
再开一个终端并切换oracle用户,执行如下操作:
#su oracle
$export LANG=en_US (这里要注意了,不设置用英文显示,安装界面会出现乱码或有些文字看不到)
$cd /tmp/database
$./runInstaller
安装过程(略...)
*安装到最后处理sqlplus时,系统会要求用root账户执行两个脚本,这时可以在刚才的第一个终端(root)上按提示找到要执行的脚本然后执行后继续操作
数据库安装成功......!
<启动监听>
在oracle用户下找到/u01/app/oracle/product/10.2.0/db_1/bin
执行./lsnrctl service(可以查看当前监听器服务情况)
执行./lsnrctl start(启动监听)
执行./lsnrctl stop(停止监听)
<启动数据库>
用oracle账户登录系统,执行如下命令:
$sqlplus /nolog
SQL>connect /as sysdba
Connected to an idle instance
SQL>startup 启动数据库(启动成功,就可以松一口气了)
SQL>shutdown 关闭数据库
<启动EM>
默认情况下,安装Oracle时,会安装EM,它是位于数据库服务器上的HTTP服务器
启动EM,要确保OracleDBConsole<SID>服务已经启动
启动服务:emctl start dbconsole
关闭服务:emctl stop dbconsole
访问EM:http://服务器名(或IP):端口(5500或1158)/em
端口号可在$ORACLE_HOME/install/protlist.ini中找到.
<PL/SQL developer远程连接oracle 10g配置>
到oracle官方网站下载:instantclient-basic-win32-11.2.0.1.0.zip 并解压到E盘
打开解压的文件夹instantclient_11_2,新建目录network,在network下面再建子目录admin
把oracle配置文件tnsnames.ora(最好是到oracle主目录中拷贝,免得出错)放入admin文件夹中(即目录结构为:E:\instantclient_11_2\network\admin\tnsnames.ora),修改tnsnames.ora文件,将HOST一项改成oracle所在服务器的IP地址
启动PL/SQL developer之后,打开tools下的preferences对话框,在connection项里面把
Oracle Home设置成E:\instantclient_11_2
OCI Library设置成E:\instantclient_11_2\oci.dll
重新启动PL/SQL developer就可以连接了(*如果连接不成功,可能是服务器的防火墙没有开放1521端口,开放该端口,再重试)
<本地oracle客户端远程连接oracle 10g配置>
假设在window下安装了oracle 10g
在目录...\oracle\product\10.1.0\db_2\NETWORK\ADMIN下找到tnsnames.ora文件
将host值改为你要访问的远程数据库所在服务器ip, ok!记住登录的时候带上实例名,即username:用户名@实例名
TEST=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = xxx.xxx.xxx.xxx)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = TEST)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
<一个中文乱码问题>
假设我们在上面数据库安装过程中选择了AL32UTF8字符编码,但装完数据库之后有可能还是会出现中文乱码,可以这样处理:
修改文件(/home/oracle/.bash_profile)加入:
export NLS_LANG="AMERICAN_AMERICA.AL32UTF8"
解决了!
如果我们在window下用plsql使用该数据库仍然出现乱码,可以添加一个环境变量:
NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
<补充:远程安装>
假设我们在window下要远程安装oracle 10g,建议用x-manager:
1、启动xstart以root用户连接远程服务器
2、启动xshell以oracle用户登陆到远程服务器
$export DISPLAY=192.168.1.104:0.0 (这里的ip是x-manager所在机器的ip)
$export LANG=en_US
$cd /tmp/database
$./runInstaller