RedHat9安装oracle10g

RedHat9安装oracle10g
关键字: linux, oracle10g

1. 用上传工具 (SSH Secure File Transfer) 把 linux_database 上传到 redhat 中。

2. 用 putty 登陆 redhat root 帐户 , 这样方便操作 .( 可用其它工具 , 或不用工具 ) 。

3. 检查下物理内存和交换分区内存 ( 物理内存 1G 左右 , 虚拟内存 1G 左右 , 差不多就可以了 , 最好安装 linux 的时候就弄大点物理内存 , 和虚拟内存 ) 。

u grep MemTotal /proc/meminfo ( 检查物理内存 )

u grep SwapTotal /proc/meminfo ( 检查虚拟内存 )

4. 检查 redhat 是否安装了以下必备软件包 .( 少了包后安装很可能失败 , 强列要求安装以下所有包 , 要是发现没有安装的包 , 去安装光盘上找 , 基本能找到 , 然后安装就是了 ^:^ ) 检查命令 : rpm –qa |grep make ( 只要前面的包名 , 不要版本号 ) 。

? make-3.79.1 --

? gcc-3.2.3-34 --

? glibc-2.3.2-95.20 --

? compat-db-4.0.14-5

? compat-gcc-7.3-2.96.128 --

? compat-gcc-c++-7.3-2.96.128 --

? compat-libstdc++-7.3-2.96.128 --

? compat-libstdc++-devel-7.3-2.96.128 --

? openmotif21-2.1.30-8 --

? setarch-1.3-1

5. 好了 , 所有的包都安装了 . 然后创建两个用户组 ( 注意是 root 用户登陆 ) 。

u groupadd oinstall ( 创建 oinstall 用户组 )

u groupadd dba ( 创建 dba 用户组 )

6. 创建 oracle 用户 ( 注意是 root 用户登陆 ) 。

a) 检查 oracle 用户是否存在 ( 一般不存在哈 )

u id oracle ( 提示 id: oracle: No such user 就是不存在了 )

b) 创建 oracle 安装目录

u mkdir -p /u01/oracle

c) 增加 oracle 用户

u useradd -d /u01/oracle -g oinstall -G dba oracle ( 增加 oracle 用户 ,-d 家的目录为 /01/oracle ,-g 属于 oinstall 用户组 ,-G 和 dba 用户组 )

d) 更改 oracle 用户密码

u passwd oracle

e) 更改 u01 目录拥有者 :

u chown -R oracle:oinstall u01

f) 查看 nobody 用户是否存在 ( 一般默认就存在了 )

u id nobody ( 提示 uid=99(nobody) gid=99(nobody) groups=99(nobody))

7. 配置内核参数 ( 注意是 root 用户登陆 ) 。

a) 将以下代码加入 /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

rmem_default = 262144

rmem_max = 262144

wmem_default = 262144

wmem_max = 262144

b) 将以下代码加入 (/etc/security/limits.conf) 的未尾。

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

c) 将以下代码加入 (/etc/pam.d/login) 的未尾。

session required /lib/security/pam_limits.so

d) 将以下代码加入 ( /etc/profile

) 的未尾 ( BShell 下 , 一般情况是 bshell )

if [ $USER = "oracle" ]; then

if [ $SHELL = "/bin/ksh" ]; then

ulimit -p 16384

ulimit -n 65536

else

ulimit -u 16384 -n 65536

fi

fi

8. 设置 oracle 的环境变量( 注意切换到 oracle 用户下 , 我们要在 oracle 用户下安装 oracle 的吗 ^:^ 切换用户命令 su - oracle 可以用 whoami 命令查看当前登陆用户名 )。

ORACLE_BASE=/u01/oracle

ORACLE_SID=lookbing

export ORACLE_BASE ORACLE_SID

unset ORACLE_HOME

unset TNS_ADMIN

设置完后重新登陆 oracle 用户可以用 env | grep ORA 查看一下刚才设置的环境变量

9. 重启电脑让刚才的设置生效。

10. 登陆 root. 进入刚才上传 linux 的目录 , 更改 linux 目录的所属用户

chown -R oracle:oinstall database_linux ( 不改的话 oracle 用户没有权限执行安装文件 )

11. 好了,配置差不多好了,是时候安装 linux 了, oracle 用户登陆 redhat 图形化界面( 因为安装 linux 要在图形化界面进行嘛, putty 没办法图形界面啊 )进入 database_linux 安装目录下运行: ./ runInstaller 就开始安装了,如果这块通不过可以执行。 ./ runInstaller – ignoreSysPrereqs , 这样会跳过检查 。

12. 然后就是一直下一步咯,中间检查可能会有点警告,仔细看有没有什么包没有安装,其它警告无视他,下一步就是了。安装数据库的时候建议仅安装软件不安装数据仓库。这样快些。中间要执行两个脚本文件 ( 根据提示执行 )

a) /u01/oracle/oraInventory/orainstRoot.sh

b) /u01/oracle/oracle/product/10.2.0/db_1/root.sh

恭喜!安装完成

13. 设置 oracle 安装的 path 路径( oracle 用户登陆更改 .bash_profile 文件)

ORACLE_HOME=$ORACLE_BASE/oracle/product/10.2.0/db_1/

PATH=$ORACLE_HOME/bin:$PATH

export ORACLE_HOME PATH

unset TNS_NAME

注销重新登陆让环境变量生效

14. 创建数据库。因为刚才设置好了环境变量,所以可以直接使用 dbca 命令打开 oracle 的图形界面创建数据库,和 windows 操作的差不多。 全局数据库名 SID 为刚才设置环境变量时的 SID 值 ( 注意字符集的选择 )

15. 选择字符集的时候注意选第二个 al32utf8 这样以后字符就不会有乱码了。因为他支持所有字符 ^:^

16. 至此 oracle 己经成功安装, oracle 命令

? dbca: 创建数据库

? netca: 创建监听器

17. 启动数据库

1) sqlplus /nolog

2) connect / as sysdba

3) startup

问题错误解决(来自网络)

1. 启动时 ora-01102: cannot mount database in EXCLUSIVE mode

解决方法: 完全关闭数据库 , 更改 $ORACLE_HOME/dbs/init.ora 文件里的 db_name 为建库时定义的 “ 全局数据库名 ” ,然后再重新启动数据库

2. ora-00205:error in identifying conrolfile, check alert log for more info

解决方法:
SQL>show parameter control_files
SQL>CREATE CONTROLFILE
将 $ORACLE_BASE/admin/$GID/pfile/init$SID.ora*************** 拷贝到 $ORACLE_HOME/dbs 下,命名为 init$SID.ora, 即可解决。

3. ORA-01990:error opening password file '$ORACLE_NAME/dbs/orapw' ORA-27037:una ble to obtain file status
Linux Error:2: No such file or directory
Additional information: 3

解决方法: 将 $ORACLE_HOME/dbs 下的 orapw$db_name 文件拷贝生成一个 orapw 文件。

4. 建库的过程中或者连接数据库的时候提示: ORA-12547: TNS: lost contact

引起该错误的环境比较复杂,原因可能是:
1 、用 vi 编辑的 /etc/UnitedLinux-release 文件
2 、内核参数设置不正确
3 、察看一下 listener 是否正常启动 : lsnrct1 status
4 、机器负载过大

5. 安装 oracle 的时候 Xlib: connectio n to "localhost:0.0" refused server Xlib: No protocol specified

呵呵,你的 oracle 用户没有 X window 权限,解决办法:
使用 root 用户登录(必要时重新启动 os ),然后输入:
# xhost +localhost
ra
如果 x window 设置成功,可以用 oracle 用户登录后,输入: $ xclock
是不是看到一个小闹钟,呵呵,恭喜你又解决一个问题!

6. ORA-00371: not enougsh shared pool memory, should be atleast 52132659 bytes

解决方法: 这个错误并非是内核参数设置的问题,也和系统的物理内存大小无关。编辑 $ORACLE_HOME/dbs/init$GID.ora 文件:
shared_pool_size = 52132659

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值