您的位置:首页 > 数据库 > Oracle

在ubuntu 8.04下安装Oracle 11g

2008-12-14 03:41 387 查看
oracle11g数据库虽然提供了linuxx86的版本,但是支持的linux版本只有RedHat,NovellandSolaris这几个,debian和ubuntu不在支持之列,所以在ubuntu下安装就相对麻烦一些,请照着下文的方法一步一步的安装,不要急躁,每一步都要认真作(我开始装的时候就是有点急,用自己的方法简化了其中几步,结果。。。。安装失败-_-b)。我的系统:ubuntu8.04desktop(32位)内存:2G本文是"InstallingOracle11gonUbuntu8.04LTS(HardyHeron)"文章翻译和注解,是一个外国牛人写的,原文:http://www.pythian.com/blogs/968/installing-oracle-11g-on-ubuntu-804-lts-hardy-heron如果不愿意看E文的可以看我下面的翻译:黑字是原文翻译,红字是我的注解,蓝色为终端输入输出(转载注明出处:)共9步:Step1下载和安装Ubuntu8.04HardyHeron(x86-32位)版。略。Step2下载Oracle11g:DownloadOracle11gforLinux(x86,32-bit).现不要急着解压,一会我会告诉你解压在哪的。Step3修改Xserver的默认设置,点菜单的System->Administration->LoginWindow(系统->管理->登录窗口),选择“Security(安全)”选项卡,取消“DenyTCPconnectionstotheXserver(拒绝TCP连接到X服务器)”的勾,重启Xserver(或者重启系统)。然后在终端输入:
coolhty@coolhty-sm:~$xhost+127.0.0.1
127.0.0.1beingaddedtoaccesscontrollist
Step4打开终端,转换为超级用户:(注意,这里用sudosu-而不是sudo-s是有原因的:
sudosu-
将用户转换为超级用户,并新起一个会话(空的会话),而不是像
sudo-s
那样将当前会话传递个新的超级用户,减少环境变量可能造成的影响和危害。
coolhty@coolhty-sm:~$sudosu-
[sudo]passwordforuser:
root@coolhty-sm:~#apt-getupdate
...
root@coolhty-sm:~#apt-getdist-upgrade
...
root@coolhty-sm:~#reboot
Step5用apt安装一些必要的工具:
coolhty@coolhty-sm:~$sudosu-
[sudo]passwordforuser:root@coolhty-sm:~#apt-getinstallbuild-essentiallibaio1gawkkshlibmotif3alienlibtoollsb-rpm...root@coolhty-sm:~#
Step6在装完那些工具以后,我们需要做的就是修改一些Ubuntu的/bin/sh的默认连接,千万不要略过这一步,否则安装的时候会出现很多错误。root@coolhty-sm:~#cd/binroot@coolhty-sm:/bin#ls-l/bin/shlrwxrwxrwx1rootroot42008-04-2819:59/bin/sh->dashroot@coolhty-sm:/bin#ln-sfbash/bin/shroot@coolhty-sm:/bin#ls-l/bin/shlrwxrwxrwx1rootroot42008-05-0122:51/bin/sh->bash如果你想知道为什么Ubuntu用dash作为默认的shell,看这个:adetailedexplanationofwhydashisthedefaultsystemshell。Step7增加用户和组,并修改一些配置。这一步很重要!如果不是很有把握,不要随便改。(为了便于解释,增加了行号):
01root@coolhty-sm:/bin#cd
02root@coolhty-sm:~#pwd
/root
04root@coolhty-sm:~#addgroupoinstall
Addinggroup`oinstall'(GID1001)...
Done.
07root@coolhty-sm:~#addgroupdba
Addinggroup`dba'(GID1002)...
Done.
10root@coolhty-sm:~#addgroupnobody
Addinggroup`nobody'(GID1003)...
Done.
13root@coolhty-sm:~#usermod-gnobodynobody
14root@coolhty-sm:~#useradd-goinstall-Gdba-ppassword-d
/home/oracle-s/bin/bashoracle
15root@coolhty-sm:~#passwd-loracle
Passwordchanged.
17root@coolhty-sm:~#mkdir/home/oracle
18root@coolhty-sm:~#chown-Roracle:dba/home/oracle
19root@coolhty-sm:~#ln-s/usr/bin/awk/bin/awk
20root@coolhty-sm:~#ln-s/usr/bin/rpm/bin/rpm
21root@coolhty-sm:~#ln-s/usr/bin/basename/bin/basename
22root@coolhty-sm:~#mkdir/etc/rc.d
23root@coolhty-sm:~#foriin0123456S;doln-s
/etc/rc$i.d/etc/rc.d/rc$i.d;done
24root@coolhty-sm:~#mkdir-p/u01/app/oracle
25root@coolhty-sm:~#chown-Roracle:dba/u01
26root@coolhty-sm:~#
Lines04-12:增加我们需要的用户和组Line13:让nobody用户的组变为nobody,这样Oracle的安装程序不会出问题。Ubuntu默认nobody的组是nogroup。Lines14-18:创建一个oracle用户,并锁定用户,以阻止别人通过oracle用户登录系统。注意,oracle用户的HOME目录不要与ORACLE_HOME相同。Lines19-23:创建一些Oracle安装程序需要的工具的连接。因为Oracle安装程序是为RedHat准备的,所以有些工具的位置和Ubuntu不一样。Finally,onlines24-25创建ORACLE_BASE目录。Step8修改一些系统默认值。这些修改将会增加系统文件描述符的数量、增加共享内存大小和修改一些网络子系统参数。这些修改是否会对你的系统带来影响我就不得而知了。将下面这些增加到
/etc/sysctl.conf文件的末尾:
fs.file-max=65535kernel.shmall=2097152kernel.shmmax=2147483648kernel.shmmni=4096kernel.sem=25032000100128net.ipv4.ip_local_port_range=102465535net.core.rmem_default=1048576net.core.rmem_max=1048576net.core.wmem_default=262144net.core.wmem_max=262144
再增加下面这些到
/etc/security/limits.conf文件末尾:
oraclesoftnproc2047oraclehardnproc16383oraclesoftnofile1023oraclehardnofile65535[/code]为了强制使用刚才我们增加的东西,我们再增加下面这些到
/etc/pam.d/login
文件末尾:
sessionrequired/lib/security/pam_limits.sosessionrequiredpam_limits.so
然后通过命令:
sysctl-p让刚才
增加的东西生效:
root@hardy:~#sysctl-pkernel.printk=4417kernel.maps_protect=1fs.inotify.max_user_watches=524288vm.mmap_min_addr=65536net.ipv4.conf.default.rp_filter=1net.ipv4.conf.all.rp_filter=1fs.file-max=65535kernel.shmall=2097152kernel.shmmax=2147483648kernel.shmmni=4096kernel.sem=25032000100128net.ipv4.ip_local_port_range=102465535net.core.rmem_default=1048576net.core.rmem_max=1048576net.core.wmem_default=262144net.core.wmem_max=262144root@hardy:~#
Step9现在我们将刚才下载的oracle11g的安装包解压到/home/oracle/install/目录下。然后进入目录,设置DISPLAY参数,开始安装:
root@coolhty-sm:~#cd/home/oracleroot@coolhty-sm:/home/oracle#chown-Roracle:dbainstallroot@coolhty-sm:/home/oracle#su-oracleYouraccounthasexpired;pleasecontactyoursystemadministratorsu:Useraccounthasexpired(Ignored)oracle@coolhty-sm:~$exportDISPLAY=127.0.0.1:0.0oracle@coolhty-sm:~$pwd/home/oracleoracle@coolhty-sm:~$ls-ltotal4drwxr-xr-x6oracledba40962007-09-1818:50installoracle@coolhty-sm:~$cdinstalloracle@coolhty-sm:~/install$ls-ltotal28drwxr-xr-x11oracledba40962007-08-0616:02docdrwxr-xr-x5oracledba40962007-08-0313:28installdrwxr-xr-x2oracledba40962007-09-1818:52response-rwxr-xr-x1oracledba29112007-08-0313:28runInstallerdrwxr-xr-x14oracledba40962007-08-0313:27stage-rw-r--r--1oracledba48352007-08-0618:19welcome.htmloracle@coolhty-sm:~/install$./runInstaller-ignoreSysPrereqs
输入完上面命令后,就进入了Oracle的同一安装程序了(OUI),不要急,继续按照本文一步一步的通过安装:注意:OUI安装完后,并不是真正完全安装完成,还需要就行最后的收尾工作(在最后有),而且这是必须做的工作!
点(Next)下一步。(如果安装的时候显示的是方块字,不能正常阅读的话运行./runInstaller-jreLoc/opt/soft/jdk1.6.0_11/jre注意这里按实际的JDK路径填,在我机子上是这个,在你机子上可能不是哦。)
修改“SpecifyOperatingSystemgroupname:”为:"dba",然后点"Next".
按照上图设置,点下一步。
选择"EnterpriseEdition",然后下一步。
安图设置,下一步。
继续下一步。
等待系统检查,不要担心有错误和警告。
将检查到的所有非“Succeeded”的都打上勾,下一步。
选择“InstallSoftwareOnly”,等装完以后再通过dbca装数据库,下一步。你也可以在这一步选"CreateaDatabase"来安装数据库。
将所有组都设为:dba,下一步。
现在可以点“Install”了:)这个过程会等很久,而且其中系统会变慢,所以你最好拿本书在旁边,喝杯咖啡。有时候系统会变得很慢,像是要死机了,这个不要管,等他慢慢装。
到了这一步不要记着点“OK”,需要做下面操作:(另起一个终端,用sudosu-转为超级用户)
root@coolhty-sm:~#/u01/app/oraInventory/orainstRoot.shChangingpermissionsof/u01/app/oraInventoryto770.Changinggroupnameof/u01/app/oraInventorytodba.Theexecutionofthescriptiscompleteroot@coolhty-sm:~#/u01/app/oracle/product/11.1.0/db_1/root.shRunningOracle11groot.shscript...Thefollowingenvironmentvariablesaresetas:ORACLE_OWNER=oracleORACLE_HOME=/u01/app/oracle/product/11.1.0/db_1Enterthefullpathnameofthelocalbindirectory:[/usr/local/bin]:Copyingdbhometo/usr/local/bin...Copyingoraenvto/usr/local/bin...Copyingcoraenvto/usr/local/bin...Creating/etc/oratabfile...Entrieswillbeaddedtothe/etc/oratabfileasneededbyDatabaseConfigurationAssistantwhenadatabaseiscreatedFinishedrunninggenericpartofroot.shscript.Nowproduct-specificrootactionswillbeperformed.Finishedproduct-specificrootactions.root@coolhty-sm:~#
好了,这个完成后可以点“OK”了。安后点“Exit”退出OUI,现在可以祝贺你,OUI安装完成了:)但是还是不要急,记住咱们还有收尾工作需要做。设置数据库文件夹和oratab文件的访问权限:(一定要加上这个,不然在使用中会有一些小问题)$sudochown-Roracle:dba/u01/app/oracle/*$sudochmod-Rg+w/u01/app/oracle/*$sudochownoracle:dba/etc/oratab$sudochmodg+w/etc/oratab然后,在
/etc/profile文件中加入下面几句:
exportORACLE_HOME=/u01/app/oracle/product/11.1.0/db_1exportPATH=$PATH:/u01/app/oracle/product/11.1.0/db_1/bin[/code]创建一个Oracle11g数据库的启动脚本,名字可以叫做:oracledb,在/u01/app/oracle/product/11.1.0/db_1/bin下建立文件:oracledb,内容:
#!/bin/bash##/etc/init.d/oracledb##Run-levelStartupscriptfortheOracleListenerandInstances#Itreliesontheinformationon/etc/oratabexportORACLE_BASE=/u01/app/oracleexportORACLE_HOME=/u01/app/oracle/product/11.1.0/db_1exportORACLE_OWNR=oracleexportPATH=$PATH:$ORACLE_HOME/binif[!-f$ORACLE_HOME/bin/dbstart-o!-d$ORACLE_HOME]thenecho"Oraclestartup:cannotstart"exit1ficase"$1"instart)#Oraclelistenerandinstancestartupecho-n"StartingOracle:"su$ORACLE_OWNR-c"$ORACLE_HOME/bin/lsnrctlstart"su$ORACLE_OWNR-c"$ORACLE_HOME/bin/dbstart$ORACLE_HOME"touch/var/lock/oracleecho"OK";;stop)#Oraclelistenerandinstanceshutdownecho-n"ShutdownOracle:"su$ORACLE_OWNR-c"$ORACLE_HOME/bin/lsnrctlstop"su$ORACLE_OWNR-c"$ORACLE_HOME/bin/dbshut$ORACLE_HOME"rm-f/var/lock/oracleecho"OK";;reload|restart)$0stop$0start;;*)echo"Usage:`basename$0`start|stop|restart|reload"exit1esacexit0
修改脚本为可执行的:
root@coolhty-sm:~#chmoda+x/u01/app/oracle/product/11.1.0/db_1/bin/oracledb
如果你希望开机自动启动Oracle11g数据库,那么就作下面的工作:
root@coolhty-sm:~#ln-s/u01/app/oracle/product/11.1.0/db_1/bin/oracledb/etc/init.d/oracledbroot@coolhty-sm:~#sudosysv-rc-conf--level2345oracledbon如果没有sysv-rc-conf命令,就apt-get一个。
最后,增加你自己的用户名到dba组:
root@coolhty-sm:~#usermod-Gdba-auser
好了,至此,Oracle11g就安装完了。重新登录后,你就可以使用oracle的命令了。你可以通过netca增加LISTENER,通过dbca增加数据库。测试一下是否安装成功:(ORACLE_SID=heron是你安装时候设置的值)
oracle@coolhty-sm:~$exportORACLE_SID=ORCLoracle@coolhty-sm:~$sqlplus'/assysdba'SQL*Plus:Release11.1.0.6.0-ProductiononMonMay502:39:272008Copyright(c)1982,2007,Oracle.Allrightsreserved.Connectedto:OracleDatabase11gEnterpriseEditionRelease11.1.0.6.0-ProductionWiththePartitioning,OLAP,DataMiningandRealApplicationTestingoptionsSQL>
如果你看到了上面的结果,证明你的oracle安装成功了。现在就是真正安装完了:)再试着启动一下,看成功不。
SQL>connect/assysdbaConnectedtoanidleinstance.SQL>startupORACLEinstancestarted.TotalSystemGlobalArea418484224byteFixedSize		1300324bytesVariableSize		281020572bytesDatabaseBuffers	130023424bytesRedoBuffers		6139904bytesDatabasemounted.Databaseopened.启动成功!耶重启后记得要lsnrctlstart启动监听器才能开oracle的,要不会报错。
写得好累呀。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: