在ubuntu 8.04下安装Oracle 11g
本文是参考了(jin)Qhttp://hi.baidu.com/wuxicn/blog/item/0cfdc24ac5ae372609f7ef94.html"文章Q是译下面的这文章的。我主要参考的是中文的Q我只是在实际操作中做了(jin)一点小的修改Q在此表C感谢!紫色为我的注释?
原文是英?地址是:(x)
http://www.pythian.com/blogs/968/instal ... ardy-heronQ(转蝲注明出处Q谢谢!Q?Q?
?步:(x)
Step 1
下蝲和安?Ubuntu 8.04 Hardy Heron (x86-32? 版。略?
Step 2
下蝲Oracle 11gQ?Download Oracle 11g for Linux (x86, 32-bit).
C要急着解压Q一?x)我会(x)告诉你解压在哪的?
Step 3
修改X server 的默认设|,点菜单的System -> Administration -> Login WindowQ系l->理Q?gt;dH口Q,选择“SecurityQ安全)(j)”选项卡,取消“Deny TCP connections to the XserverQ拒lTCPq接到X服务器)(j)”的勾Q重启XserverQ或者重启系l)(j)。然后在l端输入Q?
user@hardy:~$ xhost +127.0.0.1
127.0.0.1 being added to access control list
Step 4
打开l端Q{换ؓ(f)用户Q(注意Q这里用sudo su -而不是sudo -s是有原因的:(x)sudo su - 用戯{换ؓ(f)用户Qƈ新v一个会(x)话(I的?x)话Q,而不是像sudo -s那样当前会(x)话传递个新的用户Q减环境变量可能造成的媄(jing)响和危害?
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安装一些必要的工具Q?
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的默认连接,千万不要略过q一步,否则安装的时候会(x)出现很多错误?
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
如果你想知道Z么Ubuntu用dash作ؓ(f)默认的shellQ看q个Qa detailed explanation of why dash is the default system shell ?
Step 7
增加用户和组Qƈ修改一些配|。这一步很重要Q如果不是很有把握,不要随便攏V?Z(jin)便于解释Q增加了(jin)行号Q:(x)
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:~# mkdir /home/oracle
16 root@hardy:~# chown -R oracle:dba /home/oracle
17 root@hardy:~# ln -s /usr/bin/awk /bin/awk
18 root@hardy:~# ln -s /usr/bin/rpm /bin/rpm
19 root@hardy:~# ln -s /usr/bin/basename /bin/basename
20 root@hardy:~# mkdir /etc/rc.d
21 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
22 root@hardy:~# mkdir -p /u01/app/oracle
23 root@hardy:~# chown -R oracle:dba /u01
24 root@hardy:~#
Lines 04-12: 增加我们需要的用户和组
Line 13: 让nobody用户的组变(sh)ؓ(f)nobodyQ这样Oracle的安装程序不?x)出问题。Ubuntu默认nobody的组是nogroup?
Lines 14-18: 创徏一个oracle用户。注意,oracle用户的HOME目录不要与ORACLE_HOME相同?
Lines 19-23: 创徏一些Oracle安装E序需要的工具的连接。因为Oracle安装E序是ؓ(f)Red Hat准备的,所以有些工L(fng)位置和Ubuntu不一栗?
Finally, on lines 24-25 创徏ORACLE_BASE目录?
Step 8
修改一些系l默认倹{这些修改将?x)增加系l文件描q符的数量、增加共享内存大和修改一些网l子pȝ参数。这些修Ҏ(gu)否会(x)对你的系l带来媄(jing)响我׃得而知?jin)。将下面q些增加?etc/sysctl.conf文g的末:(x)
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文g末尾Q?
oracle soft nproc 2047
oracle hard nproc 16383
oracle soft nofile 1023
oracle hard nofile 65535
Z(jin)强制使用刚才我们增加的东西,我们再增加下面这些到/etc/pam.d/login文g末尾Q?
session required /lib/security/pam_limits.so
session required pam_limits.so
然后通过命o(h)Qsysctl -p 让刚才增加的东西生效Q?
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参数Q开始安装:(x)
root@hardy:~# cd /home/oracle
root@hardy:/home/oracle# chown -R oracle:dba install
用oracle用户登陆Q?不然?x)出安装界面Z?
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
输入完上面命令后Q就q入?jin)Oracle 的同一安装E序?jin)(OUIQ,不要急,l箋(hu)按照本文一步一步的通过安装Q?
注意QOUI安装完后Qƈ不是真正完全安装完成Q还需要就行最后的收尾工作Q在最后有Q,而且q是必须做的工作Q?
点(NextQ下一步?
修改“Specify Operating System group name:”为:(x)"dba"Q然后点"Next".
按照上图讄Q点下一步?
选择"Enterprise Edition"Q然后下一步?
安图讄Q下一步?
l箋(hu)下一步?
{待pȝ(g)查,不要担心(j)有错误和警告?
检查到的所有非“Succeeded”的都打上勾,下一步?
Q下一步。在q一步?Create a Database"来安装数据库?span style="color: violet">Q[color=red]原文是通过netca建立监听Qdbca建库Q我W一ơ也是这样做的,dbca建库时会(x)报错Q因为ubutunbu 不支持RPM包)(j)?/span>[/color]
所有组都设为:(x)dbaQ下一步?
现在可以?#8220;Install”?jin)?x)Q时间比较长?
C(jin)q一步不要记着?#8220;OK”Q需要做下面操作Q(另v一个终端,用sudo su - 转ؓ(f)用户Q?
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:~#
好了(jin)Q这个完成后可以?#8220;OK”?jin)?
安后?#8220;Exit”退出OUIQ现在可以祝ZQOUI安装完成?jin)?x)Q但是还是不要急,C׃q有收尾工作需要做?
?etc/profile文g中加入下面几句:(x)
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数据库的启动脚本Q名字可以叫做:(x)oracledbQ在/u01/app/oracle/product/11.1.0/db_1/bin下徏立文Ӟ(x)oracledbQ内容:(x)
#!/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
修改脚本为可执行的:(x)
root@hardy:~# chmod a+x /u01/app/oracle/product/11.1.0/db_1/bin/oracledb
如果你希望开动启动Oracle 11g数据库,那么׃下面的工作:(x)
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命o(h)Q就apt-get一个?
最后,增加你自q用户名到dbal:(x)
root@hardy:~# usermod -G dba -a user
好了(jin)Q至此,Oracle 11g安装完?jin)。重新登录后Q你可以用oracle的命令了(jin)?
(ORACLE_SID=orcl 是你安装时候设|的?
oracle@hardy:~$ export ORACLE_SID=orcl
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>connect /as sysdba
Connected to an idle instance.
SQL>startup 启动数据库命令?
.
ORACLE instance started.
Total System Global Area 418484224 bytes
Fixed Size 1300324 bytes
Variable Size 281020572 bytes
Database Buffers 130023424 bytes
Redo Buffers 6139904 bytes
Database mounted.
Database opened.
oracle@hardy:~$ export ORACLE_SID=orcl
oracle@hardy:~$ emctl start dbconsole
启动EMQ地址为https://yourip:1158/em/console.q样你就可以通过IE登陆?jin)。不q界面ؓ(f)q。呵呵!Q解x(chng)法自己在|上扑Q!
如果你看C(jin)上面的结果,证明你的oracle安装成功?jin)?/div>
W二?br />
地址Q?a >http://www.linuxidc.com/Linux/2008-06/13855.htm
׃(jin)半天旉,?a title="Ubuntu" >Ubuntu 8.04 LTS上顺利安装Oracle 11G.下面说说大概的步?
1.保安装?jin)以下程?
sudo apt-get install build-essential libaio1 gawk ksh libmotif3 alien libtool lsb-rpm
2.
cd /bin
ln -sf bash /bin/sh
3.增加用户和组
addgroup oinstall
addgroup dba
addgroup nobody
useradd -g oinstall -G dba -p passwd -d /home/oracle -s /bin/bash oracle
usermod -g nobody nobody
4.
mkdir /home/oracle
chown -R oracle:dba /home/oracle
ln -s /usr/bin/awk /bin/awk
ln -s /usr/bin/rpm /bin/rpm
ln -s /usr/bin/basename /bin/basename
5.
mkdir /etc/rc.d
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
mkdir -p /opt/ora11
chown -R oracle:dba /opt
6.~辑/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
7.~辑/etc/security/limits.conf,增加以下内容:
oracle soft nproc 2047
oracle hard nproc 16383
oracle soft nofile 1023
oracle hard nofile 65535
8.~辑/etc/pam.d/login,增加以下内容:
session required /lib/security/pam_limits.so
session required pam_limits.so
9.执行:
sysctl -p
10.
su - oracle
以上命o(h)需以root用户执行,接下来切换至oracle用户.
11.切换臛_装目?开始安?我选择?jin)英语作为安装时昄的语a.
export LANG=en_CN
./runInstaller
12.安装q程中提C行以下两个脚?
orainstRoot.sh
root.sh
12.安装q程中检到pȝ未装有GLIBC环境,忽略?未发现对安装和运行有多大影响.
13.切记,安装旉择自定?q且选择数据库的字符集ؓ(f) ZHS16GBK!
因ؓ(f)忘记?jin)这个选项,我只好删掉数据库,重新Z(jin)一?费?jin)半个小时的旉?
PS.ORACLE 11g好像不支持更Ҏ(gu)据库的字W集?..或是我没有找到正的Ҏ(gu)
14.安装完成?数据库的q接和查询异怹?GOOGLE?然后试着把网l的DNS服务器全l删?解决.
15.两个常用的工?dbca和netca.

]]>
վ֩ģ壺
|
Ǩ|
Ҿ|
|
|
غ|
潭|
|
|
ʯɽ|
|
|
|
|
ƺ|
|
̩|
ƽȪ|
|
|
˻|
ͭ|
|
|
ػ|
|
ɽ|
|
ƽ|
̨|
̳|
ߴ|
|
|
ϽϽ|
|
½|
|
|
|
ƽ|