日期:2014-05-16  浏览次数:20732 次

oracle在linux下安装遇到的所有的问题总结说明(3)
大部分内容为已经遇到过的问题解决方案,基本都是谷歌出来的,留下给自己查询用。
采用OFA的时候需要手动创建一些文件夹,/u01/app/oracle/oraInventory 记得为每一级路径添加写的权限,否则会报错 ,弹出错误对话框“'S_OWNER_SYSTEM_EPERM”

derek@derek-desktop:/$ sudo chmod -R 777 /u01/app/

derek@derek-desktop:/$ sudo chmod -R 777 /u01/app/oracle/

derek@derek-desktop:/$ sudo chmod -R 777 /u01/app/oracle/oraInventory/


修改内核参数,sudo gedit /etc/sysctl.conf,添加如下内容: kernel.shmmax = 3147483648

kernel.shmmni = 4096

kernel.shmall = 2097152

kernel.sem    = 250 32000 100 128

fs.file-max  = 65536

net.ipv4.ip_local_port_range = 1024 65000

注:shmmax(最大共享内存)是一个很重要参数,根据您的机器的内存来设定。如果您设置不合适的话,在创建数据库到约86%的时候就会挂掉。

修改limits.conf

添加下面的行到/etc/security/limits.conf以修改你的资源限制:

oracle soft nofile 65536

oracle hard nofile 65536

oracle soft nproc 16384

oracle hard nproc 16384

让修改生效

修改了以上文件后,必须让其生效,重启系统,或者切换到root用户下用以下的方式改变内核运行参数:

#sysctl -p

添加下列行到~/.bashrc:

# oracle 10g

export ORACLE_BASE=/home/derek/oracle

export ORACLE_HOME=$ORACLE/product/10.2.0/db_1

export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH

export ORACLE_OWNER=derek

export ORACLE_TERM=xterm

如果你的操作系统是中文的,运行安装的时候会出现乱码,解决办法:进入java的安装路径

$ cd /usr/lib/j2se/1.4/lib

$ sudo cp font.properties.zh_CN_UTF8.Sun font.properties

将最下面的一行改为如下:

filename.-misc-fzsongti-medium-r-normal--*-%d-*-*-p-*-iso10646- 1=/usr/share/fonts/VeraSansYuanTi/VeraSansYuanTi-Regular.ttf

appendedfontpath=/usr/share/fonts/VeraSansYuanTi

java就支持中文显示了。

运行安行是使用系统jre:方法如下:./runInstaller  -jreLoc /usr/lib/j2se/1.4/jre

接着一直安默认选项装下去就可以了.在安装过程中记得要将创建的数据库的isqlplus和em的url保存在某个文件中,以后登录数据库进行数据库的管理是通过浏览器使用那个url来进行登录的,oracle 10g采用B/S架构.


Oracle安装完成之后,默认状态下oracle的服务不会在系统启动的时候自动启动,我们可以在终端输入命令isqlplus start/emctl start/dbstart 来启动oracle的服务,,但是更简单的方式是设置这些服务在系统启动时自动启动,,需要创建一个脚本. /etc/init.d/./oracledb,脚本的内容如下:

#!/bin/bash

#

# /etc/init.d/oracledb

#

# Run-level Startup script for the Oracle Instance, Listener, and

# Web Interface

export ORACLE_HOME=/home/derek/oracle/product/10.2.0/db_2

export ORACLE_SID=orcl

export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH

ORA_OWNR="derek"

# if the executables do not exist -- display error

if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]

then

echo "Oracle startup: cannot start"

exit 1

fi

# depending on parameter -- startup, shutdown, restart

# of the instance and listener or usage display

case "$1" in

start)

# Oracle listener and instance startup

echo -n "Starting Oracle: "

su $ORA_OWNR -c "$ORACLE_HOME/bin/lsnrctl start"

su $ORA_OWNR -c "$ORACLE_HOME/bin/dbstart"

touch /var/lock/oracle

su $ORA_OWNR -c "$ORACLE_HOME/bin/emctl start dbconsole"

echo "OK"

;;

stop)

# Oracle listener and instance shutdown

echo -n "Shutdown Oracle: "

su $ORA_OWNR -c "$ORACLE_HOME/bin/lsnrctl stop"

su $ORA_OWNR -c "$ORACLE_HOME/bin/dbshut"

rm -f /var/lock/oracle

su $ORA_OWNR -c "$ORACLE_HOME/bin/emctl stop dbconsole"

echo "OK"

;;

reload|restart)

$0 stop

$0 start

;;

*)

echo "Usage: `basename $0` start|stop|restart|reload"

exit 1

esac

exit 0

脚本创建完成之后,为该脚本添加执行的权限sudo chmod +x /etc/init.d/./oracle