`
s103y
  • 浏览: 116763 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

在ubuntu 8.04下安装Oracle 11g二

阅读更多
在ubuntu 8.04下安装Oracle 11g
2008年05月22日 星期四 11:02

oracle 11g 数据库虽然提供了linux x86的版本,但是支持的linux版本只有Red Hat,Novell and Solaris 这几个,debian 和 ubuntu 不在支持之列,所以在ubuntu下安装就相对麻烦一些,请照着下文的方法一步一步的安装,不要急躁,每一步都要认真作(我开始装的时候就是有点急,用自己的方法简化了其中几步,结果。。。。安装失败-_-b )。

我的系统:ubuntu 8.04 desktop (32位) 内存:896M (本来是1G, 分了128M给显卡)

本文是"Installing Oracle 11g on Ubuntu 8.04 LTS (Hardy Heron)"文章翻译和注解,是一个外国牛人写的,原文:
http://www.pythian.com/blogs/968/installing-oracle-11g-on-ubuntu-804-lts-hardy-heron
如果不愿意看E文的可以看我下面的翻译:黑字是原文翻译,
红字是我的注解蓝色为终端输入输出
(转载注明出处: )

共9步:

Step 1
下载和安装 Ubuntu 8.04 Hardy Heron (x86-32位) 版。略。

Step 2
下载Oracle 11g: Download Oracle 11g for Linux (x86, 32-bit).
现不要急着解压,一会我会告诉你解压在哪的。

Step 3
修改X server 的默认设置,点菜单的System -> Administration -> Login Window(系统->管理->登录窗口),选择“Security(安全)”选项卡,取消“Deny TCP connections to the Xserver(拒绝TCP连接到X服务器)”的勾,重启Xserver(或者重启系统)。然后在终端输入:
user@hardy:~$ xhost +127.0.0.1
127.0.0.1 being added to access control list
Step 4
打开终端,转换为超级用户:(注意,这里用sudo su -而不是sudo -s是有原因的:sudo su - 将用户转换为超级用户,并新起一个会话(空的会话),而不是像sudo -s那样将当前会话传递个新的超级用户,减少环境变量可能造成的影响和危害。
user@hardy:~$ sudo su -
[sudo] password for user:
root@hardy:~# apt-get update
...
root@hardy:~# apt-get dist-upgrade
...
root@hardy:~# reboot

Step 5
用apt安装一些必要的工具:

user@hardy:~$ sudo su -
[sudo] password for user:
root@hardy:~# apt-get install build-essential libaio1 gawk ksh libmotif3 alien libtool lsb-rpm
...
root@hardy:~#


Step 6
在装完那些工具以后,我们需要做的就是修改一些Ubuntu的/bin/sh的默认连接,千万不要略过这一步,否则安装的时候会出现很多错误。

root@hardy:~# cd /bin
root@hardy:/bin# ls -l /bin/sh
lrwxrwxrwx 1 root root 4 2008-04-28 19:59 /bin/sh -> dash
root@hardy:/bin# ln -sf bash /bin/sh
root@hardy:/bin# ls -l /bin/sh
lrwxrwxrwx 1 root root 4 2008-05-01 22:51 /bin/sh -> bash

如果你想知道为什么Ubuntu用dash作为默认的shell,看这个:a detailed explanation of why dash is the default system shell

Step 7
增加用户和组,并修改一些配置。这一步很重要!如果不是很有把握,不要随便改。(为了便于解释,增加了行号):
01 root@hardy:/bin# cd
02 root@hardy:~# pwd
/root
04 root@hardy:~# addgroup oinstall
Adding group `oinstall' (GID 1001) ...
Done.
07 root@hardy:~# addgroup dba
Adding group `dba' (GID 1002) ...
Done.
10 root@hardy:~# addgroup nobody
Adding group `nobody' (GID 1003) ...
Done.
13 root@hardy:~# usermod -g nobody nobody
14 root@hardy:~# useradd -g oinstall -G dba -p password -d /home/oracle -s /bin/bash oracle
15 root@hardy:~# passwd -l oracle
Password changed.
17 root@hardy:~# mkdir /home/oracle
18 root@hardy:~# chown -R oracle:dba /home/oracle
19 root@hardy:~# ln -s /usr/bin/awk /bin/awk
20 root@hardy:~# ln -s /usr/bin/rpm /bin/rpm
21 root@hardy:~# ln -s /usr/bin/basename /bin/basename
22 root@hardy:~# mkdir /etc/rc.d
23 root@hardy:~# for i in 0 1 2 3 4 5 6 S ; do ln -s /etc/rc$i.d /etc/rc.d/rc$i.d ; done
24 root@hardy:~# mkdir -p /u01/app/oracle
25 root@hardy:~# chown -R oracle:dba /u01
26 root@hardy:~#
  • Lines 04-12: 增加我们需要的用户和组
  • Line 13: 让nobody用户的组变为nobody,这样Oracle的安装程序不会出问题。Ubuntu默认nobody的组是nogroup。
  • Lines 14-18: 创建一个oracle用户,并锁定用户,以阻止别人通过oracle用户登录系统。注意,oracle用户的HOME目录不要与ORACLE_HOME相同。
  • Lines 19-23: 创建一些Oracle安装程序需要的工具的连接。因为Oracle安装程序是为Red Hat准备的,所以有些工具的位置和Ubuntu不一样。
  • Finally, on lines 24-25 创建ORACLE_BASE目录。
Step 8
修改一些系统默认值。这些修改将会增加系统文件描述符的数量、增加共享内存大小和修改一些网络子系统参数。这些修改是否会对你的系统带来影响我就不得而知了。将下面这些增加到/etc/sysctl.conf文件的末尾:
fs.file-max = 65535
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 1024 65535
net.core.rmem_default = 1048576
net.core.rmem_max = 1048576
net.core.wmem_default = 262144
net.core.wmem_max = 262144


再增加下面这些到/etc/security/limits.conf文件末尾:

oracle soft nproc 2047
oracle hard nproc 16383
oracle soft nofile 1023
oracle hard nofile 65535


为了强制使用刚才我们增加的东西,我们再增加下面这些到/etc/pam.d/login文件末尾:

session required /lib/security/pam_limits.so
session required pam_limits.so


然后通过命令:sysctl -p 让刚才增加的东西生效:

root@hardy:~# sysctl -p
kernel.printk = 4 4 1 7
kernel.maps_protect = 1
fs.inotify.max_user_watches = 524288
vm.mmap_min_addr = 65536
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.all.rp_filter = 1
fs.file-max = 65535
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 1024 65535
net.core.rmem_default = 1048576
net.core.rmem_max = 1048576
net.core.wmem_default = 262144
net.core.wmem_max = 262144
root@hardy:~#


Step 9
现在我们将刚才下载的oracle11g的安装包解压到/home/oracle/install/目录下。然后进入目录,设置DISPLAY参数,开始安装:

root@hardy:~# cd /home/oracle
root@hardy:/home/oracle# chown -R oracle:dba install
root@hardy:/home/oracle# su - oracle
Your account has expired; please contact your system administrator
su: User account has expired
(Ignored)
oracle@hardy:~$ export DISPLAY=127.0.0.1:0.0
oracle@hardy:~$ pwd
/home/oracle
oracle@hardy:~$ ls -l
total 4
drwxr-xr-x 6 oracle dba 4096 2007-09-18 18:50 install
oracle@hardy:~$ cd install
oracle@hardy:~/install$ ls -l
total 28
drwxr-xr-x 11 oracle dba 4096 2007-08-06 16:02 doc
drwxr-xr-x 5 oracle dba 4096 2007-08-03 13:28 install
drwxr-xr-x 2 oracle dba 4096 2007-09-18 18:52 response
-rwxr-xr-x 1 oracle dba 2911 2007-08-03 13:28 runInstaller
drwxr-xr-x 14 oracle dba 4096 2007-08-03 13:27 stage
-rw-r--r-- 1 oracle dba 4835 2007-08-06 18:19 welcome.html
oracle@hardy:~/install$ ./runInstaller -ignoreSysPrereqs


输入完上面命令后,就进入了Oracle 的同一安装程序了(OUI),不要急,继续按照本文一步一步的通过安装:
注意:OUI安装完后,并不是真正完全安装完成,还需要就行最后的收尾工作(在最后有),而且这是必须做的工作!

点(Next)下一步。

修改“Specify Operating System group name:”为:"dba",然后点"Next".

按照上图设置,点下一步。

选择"Enterprise Edition",然后下一步。

安图设置,下一步。

继续下一步。

等待系统检查,不要担心有错误和警告。

将检查到的所有非“Succeeded”的都打上勾,下一步。

选择“Install Software Only”,等装完以后再通过dbca装数据库,下一步。你也可以在这一步选"Create a Database"来安装数据库。
将所有组都设为:dba,下一步。
现在可以点“Install”了:)这个过程会等很久,而且其中系统会变慢,所以你最好拿本书在旁边,喝杯咖啡。
有时候系统会变得很慢,像是要死机了,这个不要管,等他慢慢装。
到了这一步不要记着点“OK”,需要做下面操作:(另起一个终端,用sudo su - 转为超级用户)

root@hardy:~# /u01/app/oraInventory/orainstRoot.sh
Changing permissions of /u01/app/oraInventory to 770.
Changing groupname of /u01/app/oraInventory to dba.
The execution of the script is complete
root@hardy:~# /u01/app/oracle/product/11.1.0/db_1/root.sh
Running Oracle 11g root.sh script...

The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/app/oracle/product/11.1.0/db_1

Enter the full pathname of the local bin directory: [/usr/local/bin]:
Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...

Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
root@hardy:~#


好了,这个完成后可以点“OK”了。
安后点“Exit”退出OUI,现在可以祝贺你,OUI安装完成了:)但是还是不要急,记住咱们还有收尾工作需要做。

设置数据库文件夹和oratab文件的访问权限:(一定要加上这个,不然在使用中会有一些小问题)
$ sudo chown -R oracle:dba /u01/app/oracle/*
$ sudo chmod -R g+w /u01/app/oracle/*
$ sudo chown oracle:dba /etc/oratab
$ sudo chmod g+w /etc/oratab


然后,在/etc/profile文件中加入下面几句:

export ORACLE_HOME=/u01/app/oracle/product/11.1.0/db_1
export PATH=$PATH:/u01/app/oracle/product/11.1.0/db_1/bin


创建一个Oracle 11g数据库的启动脚本,名字可以叫做:oracledb,在/u01/app/oracle/product/11.1.0/db_1/bin下建立文件:oracledb,内容:

#!/bin/bash
#
# /etc/init.d/oracledb
#
# Run-level Startup script for the Oracle Listener and Instances
# It relies on the information on /etc/oratab

export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/11.1.0/db_1
export ORACLE_OWNR=oracle
export PATH=$PATH:$ORACLE_HOME/bin

if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
then
echo "Oracle startup: cannot start"
exit 1
fi

case "$1" in
start)
# Oracle listener and instance startup
echo -n "Starting Oracle: "
su $ORACLE_OWNR -c "$ORACLE_HOME/bin/lsnrctl start"
su $ORACLE_OWNR -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"
touch /var/lock/oracle
echo "OK"
;;
stop)
# Oracle listener and instance shutdown
echo -n "Shutdown Oracle: "
su $ORACLE_OWNR -c "$ORACLE_HOME/bin/lsnrctl stop"
su $ORACLE_OWNR -c "$ORACLE_HOME/bin/dbshut $ORACLE_HOME"
rm -f /var/lock/oracle
echo "OK"
;;
reload|restart)
$0 stop
$0 start
;;
*)
echo "Usage: `basename $0` start|stop|restart|reload"
exit 1
esac

exit 0


修改脚本为可执行的:

root@hardy:~# chmod a+x /u01/app/oracle/product/11.1.0/db_1/bin/oracledb

如果你希望开机自动启动Oracle 11g数据库,那么就作下面的工作:

root@hardy:~# ln -s /u01/app/oracle/product/11.1.0/db_1/bin/oracledb /etc/init.d/oracledb
root@hardy:~# sudo sysv-rc-conf --level 2345 oracledb on

如果没有sysv-rc-conf命令,就apt-get一个。

最后,增加你自己的用户名到dba组:

root@hardy:~# usermod -G dba -a user

好了,至此,Oracle 11g就安装完了。重新登录后,你就可以使用oracle的命令了。
你可以通过netca增加LISTENER,通过dbca增加数据库。测试一下是否安装成功:
(ORACLE_SID=heron 是你安装时候设置的值)

oracle@hardy:~$ export ORACLE_SID=heron
oracle@hardy:~$ sqlplus '/as sysdba'

SQL*Plus: Release 11.1.0.6.0 - Production on Mon May 5 02:39:27 2008

Copyright (c) 1982, 2007, Oracle. All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL>


如果你看到了上面的结果,证明你的oracle安装成功了。
现在就是真正安装完了:)

写得好累呀。。。
分享到:
评论

相关推荐

    Ubuntu8.04_server安装oracle10g

    在 Ubuntu 8.04 Server 上安装 Oracle 10g 是一项技术性较强的任务,需要遵循一系列详细的步骤。以下是安装过程中的关键知识点: 1. **环境准备**: - Ubuntu 平台:Ubuntu 8.04 Server 是一个基于 Debian 的 ...

    在 Ubuntu 8.04 LTS (Hardy Heron) 上安装 Oracle 11g翻译.docx

    在安装 Oracle 11g 之前,需要先安装 Ubuntu 8.04 LTS (Hardy Heron)。用户可以从 Ubuntu 官方网站下载安装镜像文件,并将其刻录到 CD 上,然后安装到任何一个喜欢的主机上。在安装系统的过程中,唯一的注意事项是,...

    Oracle 11g for ubuntu 安装教程

    Oracle 11g 是一个功能强大的关系数据库管理系统,但是其在 Ubuntu 下的安装却存在一定的难度。以下是 Oracle 11g for ubuntu 安装教程的知识点总结: 安装前提条件 * Ubuntu 8.04 desktop (32 位) 操作系统 * ...

    ubuntu 8.04使用 Oracle Spatial 11g 选件进行 RDF 语义数据管理

    标题中的“ubuntu 8.04使用 ...综合这些知识点,我们可以了解到在Ubuntu 8.04环境下,如何利用Oracle Spatial 11g的强大功能来管理和分析RDF语义数据,这对于数据科学家和IT专业人员在构建语义网和智能应用时极具价值。

    在 Ubuntu 8.04 LTS (Hardy Heron) 上安装 Oracle 11g翻译.pdf

    在 Ubuntu 8.04 LTS (Hardy Heron) 上安装 Oracle 11g 的过程是一项技术性较强的任务,尤其因为这是一个旧版本的操作系统,但这个教程仍然具有一定的参考价值。Oracle 11g 是一个企业级的关系型数据库管理系统,而 ...

    ubuntu下安装oracle10g

    在Ubuntu 8.04系统上安装Oracle 10g是一项技术性较强的任务,涉及到操作系统配置、依赖安装、用户权限管理以及数据库实例的创建等多个环节。以下是对整个过程的详细阐述: 1. **系统需求与准备**:首先,确保你的...

    在Ubuntu Server(804,904)上安装Oracle 10g企业版

    本指南旨在为希望在Ubuntu Server 8.04或9.04版本上安装Oracle 10g企业版数据库的用户提供了详细的步骤和注意事项。Ubuntu Server作为一款流行的Linux发行版,以其稳定性、安全性以及开源社区的强大支持而闻名。而...

    804下安装Oracle.docx

    根据提供的文档内容,以下是在Ubuntu 8.04下安装Oracle 11g的相关知识点: ### 安装背景与挑战 - **Oracle 11g官方支持情况**:Oracle 11g数据库虽提供Linux x86版本,但仅支持Red Hat、Novell和Solaris等操作系统...

    Oracle Ubuntu 安装指南

    此外,本文档还提到了在不同版本的Ubuntu系统下安装Oracle的特定步骤,如Ubuntu 7.04和Ubuntu 8.04,以及如何在Linux环境下设置用户和配置文件,以实现环境变量的一劳永逸配置。 综上所述,Oracle 10g在Ubuntu系统...

    ubuntu8.04 qt-eclipse编程环境搭建

    在Ubuntu 8.04操作系统上搭建Qt-Eclipse编程环境是一项关键任务,这对于Qt应用程序的开发至关重要。这个过程涉及到几个主要步骤,包括安装Qt、Eclipse、JRE(或JDK),以及集成Qt-Eclipse插件。以下是详细的搭建流程...

    ANDROID编译[借鉴].pdf

    可以从Oracle官网下载JDK 6的Linux版本,然后在Ubuntu中手动解压安装。安装步骤如下: 1. 下载JDK 6安装包。 2. 使用`sudo chmod +x jdk-6u30-linux-i586.bin`命令赋予安装包执行权限。 3. 运行`sudo ./jdk-6u30-...

    cloudera CDH4 quick start guide 4.0(pdf)

    在安装CDH4之前,确保已经满足以下条件: - **支持的操作系统**:CDH4支持多种Linux发行版,包括但不限于Red Hat Enterprise Linux、CentOS、Ubuntu等。 - **Java环境**:安装Oracle JDK,这是运行Hadoop集群的必要...

    2010前.zip

    1. **早期操作系统**:例如Windows XP的设置和故障排除,或者是Linux的早期发行版如Ubuntu 8.04。 2. **编程语言发展**:早期的Java、Python、Ruby等语言的教程,以及编程范式的演变。 3. **网络技术**:如...

Global site tag (gtag.js) - Google Analytics