本文章安装部分参考链接:http://hi.baidu.com/glzhang8610/blog/item/b004570e8631e827e9248837.html,旨在分享自己在安装过程中遇到的问题以及解决办法。
经过两个月的认真学习,终于把鸟哥的私房菜看得差不多了,于是,就想安装一下oracle数据库了。虽然在oracle的官网上可以看到的最新版本是11g,但是,由于对10g比较熟悉,所以,我便先安装10g。
1.安装准备
我的环境是:ubuntu10.04版本和oracle10g。oracle10g可以在官网下载。地址:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html
下载Oracle Database 10g Release 2 (10.2.0.1.0) for Linux x86 版本:10201_database_linux32.zip。
2.更新ubuntu。
sudo apt-get update
sudo apt-get upgrade
3.安装缺少的包。
1)sudo apt-get install gcc make binutils lesstif2 libc6 libc6-dev rpm libmotif3 libaio1 alien
注:你可以用以下方法代替 2),即不安装compat-libstdc++-33-3.2.3-61.i386.rpm ,不过我没试过。
cd /usr/lib
ln -s libstdc++.so.6 libstdc++.so.5
2)到www.google.com.hk搜索:compat-libstdc++-33-3.2.3-61.i386.rpm,并下载。
打开shell,用cd,进入目录后,1)).用root用户登录:su -
2)).执行安装命令: alien -i compat-libstdc++-33-3.2.3-61.i386.rpm
4.修改ubuntu的版本,欺骗oracle安装程序。
需要在/etc/目录下创建一个文件redhat-release ,需要权限进行创建,创建好后添加如下内容
$ sudo gedit /etc/redhat-release
添加下面一行后保存。
Red Hat Linux release 3.1 (drupal)
5.创建用户。
1)登录root用户:su -
(如果您的root口令没有手动设置,使用sudo passwd root 命令从新设置后,再登录)。
2)为安装程序创建一个Oracle用户和两个组.
首先检查它们是否已经存在:
$grep oinstall /etc/group
$grep dba /etc/group
$grep nobody /etc/group
如果它们还不在系统中,那么创建它们。
$sudo addgroup oinstall
$sudo addgroup dba
$sudo addgroup nobody
$sudo useradd -m -g oinstall -G dba -p passwd -d /home/oracle -s /bin/bash oracle
$sudo usermod -g nobody nobody
注释:如果您对上述参数不理解的话,请用命令: man useradd 查看。
6.添加用户到sudoer列表中
sudo gedit /etc/sudoers
在“ root ALL=(ALL) ALL” 下一行 ,添加:
oracle ALL=(ALL) ALL
保存。
注:Linux默认是没有将用户添加到sudoers列表中的,需要root手动将账户添加到sudoers列表中,才能让普通账户执行sudo令。
7.创建oracle安装目录。
#mkdir -p /opt/ora10
#chown -R oracle:oinstall /opt/ora*
#chmod -R 775 /opt/ora*
您生成了 oracle 的运行时路径,并且授写权限给 oracle 用户,执行权限给 dba 组。
8. 系统环境配置。
1)添加以下行到/etc/sysctl.conf文件中:
执行sudo gedit /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
更新系统,运行:
$sudo sysctl -p
2)添加以下行到/etc/security/limits.conf文件中:
* soft nproc 2407
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536
3)建立软连接:
$sudo ln -s /usr/bin/awk /bin/awk
$sudo ln -s /usr/bin/rpm /bin/rpm
$sudo ln -s /usr/bin/basename /bin/basename
4)修改ubuntu的oracle用户的环境变量。
编辑:gedit /home/oracle/.bashrc文件,加入:
export ORACLE_HOME=/opt/ora10export ORACLE_OWNER=oracle
export ORACLE_SID=ora1
export ORACLE_TERM=xterm
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH
上面的操作都是针对本次安装所进行的环境设置,按照上面的设置,可以保证我们对oracle的安装和文件放置等可以有规律而不会混乱。下面的安装过程才是问题出现最多的地方。
二.安装oracle
完成了上述的准备之后,就注销系统,切换用户oracle。这时解压下载的zip文件,会生成database文件夹。
cd进入database。
执行:
./runInstaller
正常的话会出现oracle安装图形界面。此时根据提示安装即可,除了密码之外,基本上都是使用默认设置。
注意事项:
(1) 在这里,我出现过一个错误,就是在原用户登录的情况下,直接用命令su oracle来执行./runInstaller命令,结果是出现了一大堆不明的错误。后来才 发现,原来是一定要原用户注销,然后换成oracle登录系统才可以正确出现安装图形界面。
(2) 安装图形界面会出现乱码的情况,是系统语系编码的原因,在oracle用户登录之后,使用命令export LANG=zh_CN.gbk,就可以解决这个问题。
(3) 在安装的后期,会要求用root身份执行orainstRoot.sh和root.sh两个文件,只要按照提示执行就可以了。
三.启动oracle
1.切换为oracle用户的权限。
su oracle (在这里,博主建议大家以oracle用户帐号登录)
2.启动TNS监听器:$ORACLE_HOME/bin/lsnrctl start (这里的ORACLE_HOME就是之前设置的/opt/ora10,是oracle的安装目录)
关闭TNS:$ORACLE_HOME/bin/lsnrctl stop
3.启动sqlplus:$ORACLE_HOME/bin/sqlplus /nolog
关闭sqlplus:SQL>exit
注意:这里严格执行,再接着做下一步
四.创建数据库
1.注销当前用户,也就是退出系统,再用oracle登录
2.打开终端,直接输入命令:dbca,此后会自动打开数据库创建的图形界面,根据提示安装就行了。
注意:
(1) 在填写sid的时候,一定要与之前的设定一致,也就是ora1
(2) 在这步的安装过程中,可能也会出现安装界面乱码的情况,这时候,只要再输入一次export LANG=zh_CN.gbk就行了。此时,数据库已经创建完成了。