|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
RDBMS并非没有局限性。它们难以扩展,需要大量的资源来配置和维护,比如时间、硬件和人力。同样,它们往往遵循峰值性能模型,这就要求系统按照峰值容量来配置可用性,而不考虑典型的数据使用情况。oracle|心得在Linux上安装Oracle8i
(注:援用http://vip.6to23.com/hanson/htdocs/oracle.htm,在安装过程当中作一些改正)
关于Oracle安装的会商已有良多了,但是在理论中你仍是总会碰到某些贫苦,因而我就留下我的两分钱吧。本文会商的情况基于RedhatLinux9.0.93,
Oracle的版本号为8.1.7.0.1。
下载软件
假定你已有了一台跑着Redhat的呆板,而且它满意Oracle8i对硬件的相干请求,而且具有收集毗连,上面就下载其他所需的软件。起首在OTN下载linux
81701.tar和glibc-2.1.3-stubs.tar.gz,别的还必要:
i386-glibc-2.1-linux.tar.gz(下载地位:http://ftp.valinux.com/pub/suppo...c-2.1-linux.tar.gz)
binutils-2.10.91.0.2-3.i386.rpm(下载地位:http://mirrors.usc.edu/pub/linux...s/i386/RedHat/RPMS/
binutils-2.10.91.0.2-3.i386.rpm)
(Redhat自带的是binutils-2.13.90.0.18-9.i386.rpm,用于恢复,下载地位:http://mirrors.usc.edu/pub/linux...t/redhat/linux/9/en
/os/i386/RedHat/RPMS/compat-gcc-7.3-2.96.118.i386.rpm)
jdk118_v3-glibc-2.1.3.tar.bz2(下载地位:http://ftp.dk.xemacs.org/pub/lan...libc-2.1.3.tar.bz2)
由于Oracle自带了JRE1.1.8,以是不必独自安装,假定以上所述软件都放在/tmp目次。
(注:还必要从Java官方网站下载JDK1.4.2用以恢复,我安装的Redhat9没有发明JDK1.4.2,下载地位:http://java.sun
.com/j2se/1.4.2/download.html)
安装glibc、JDK、和binutils
su
cd/
tarzxvf/tmp/i386-glibc-2.1-linux.tar.gz
cd/usr/bin
mkdirsaved
mvgccccldsaved
ln-s/usr/i386-glibc-2.1-linux/bin/i386-glibc21-linux-gccgcc
ln-sgcccc
ln-s/usr/i386-glibc-2.1-linux/bin/i386-glibc21-linux-ldld
(注:安装oracle过程当中发明/usr/bin/ld变成非链接,必要从头设置,不然会呈现毗连堕落!)
cd/usr/lib
mkdirsaved
mvlibc.solibdl.solibm.solibpthread.sosaved
mvlibc.alibdl.alibm.alibpthread.asaved
(注:没有安装过java的话就没有这个目次,必要先mkdir/usr/java)
cd/usr/java
tarjxvf/tmp/jdk118_v3-glibc-2.1.3.tar.bz2
ln-s/usr/java/jdk118_v3/usr/local/java
(注:本来是ln-sjdk118_v3/usr/local/java,厥后发明链接不准确)
(注:安装前先转到软件安排目次cd/tmp)
rpm-Uvh--force--nodepsbinutils-2.10.91.0.2-3.i386.rpm
(注:实行这一命令后/usr/bin/ld变成非链接,必要从头设置,不然会呈现毗连堕落!)
创立用户和组
groupaddoinstall
groupadddba
groupaddoper(注:此组还象没有效到,能够往失落,上面的useradd也要响应的往失落)
useradd-d/oracle-goinstall-Gdba,operoracle(注:此处为给oracle用户设定/oracle目次,默许是/home/oracle)
passwdoracle
chown-Roracle.dba/oracle
chmod750/oracle
筹办安装
vi/oracle/.bash_profile(注:因为后面给oracle设置/oracle目次,默许是/home/oracle/.bash_profile)
修正为以下内容:
(注:内容入手下手,能够在非Linux情况修正这个文件,不外该文件中换行只能是0A,要往失落一切的0D)
#.bash_profile
#Getthealiasesandfunctions
if[-f~/.bashrc];then
.~/.bashrc
fi
#Userspecificenvironmentandstartupprograms
unsetUSERNAME
umask022
exportEDITOR=vi
exportTERM=xterm
exportTMPDIR=/tmp
#Setupinstallationenvironment
exportORACLE_SID=orcl
exportORACLE_BASE=/oracle
exportORACLE_HOME=$ORACLE_BASE/product/8.1.7
exportLD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/i386-glibc-2.1-linux/i386-glibc-linux/lib:/lib:/usr/lib:/lib:/usr/local/lib(注:恢复时这一行要删i
386-glibc-2.1的路径)
exportSHLIB_PATH=$ORACLE_HOME/lib:/usr/lib:/lib:/usr/local/lib
exportLIBPATH=$ORACLE_HOME/lib:/usr/lib:/lib:/usr/local/lib
exportTNS_ADMIN=$ORACLE_HOME/network/admin
exportNLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1
exportORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
exportORACLE_OWNER=oracle
exportORACLE_TERM=xterm
exportGCC_EXEC_PREFIX=/usr/i386-glibc21-linux/lib/gcc-lib/
exportLD_ASSUME_KERNEL=2.4
exportJAVA_HOME=/usr/local/java
exportCLASSPATH=$ORACLE_HOME/jdbc/lib/classes111.zip:$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib:.
(注:内容停止,注重export的内容在统一行上,CLASSPATH前面的classesxxx.zip倡议本人往查一下,我这里xxx是111,路径用冒号分开而不是分号)
suoracle
..bash_profile
exportLANG=en
cd/tmp
tarxvflinux81701.tar
个中exportLANG=en是为了避免界面黑做一团。
(注:此时最好往反省一下/usr/bin/ld的链接是不是准确:ls-l/usr/bin/ld,应当链接到/usr/i386-glibc-2.1-linux/bin/i386-glibc21-linux-ld才对,不然重
复后面的做法,先rm/usr/bin/ld,再ln。别的倡议对后面设定的各个链接都反省一下:/usr/bin/gcc,/usr/bin/cc,/usr/local/java,深白色的暗示链接不准确)
入手下手安装
./Disk1/runInstaller
点击Next;在UNIXGroupName里输出oinstall;呈现一个提醒框请求实行orainstRoot.sh,这时候别的翻开一个终端:
su
cd$ORACLE_HOME
./orainstRoot.sh
回到GUI,按Retry;选择安装EnterpriseEdition;选择典范安装;选择利用一个已存在的repository;选择JDK的地位(注:应是/usr/local/java);问
是不是要新建一个数据库,不必;持续,守候一段工夫;呈现一个提醒框请求实行root.sh;回到终端:
(注:倡议选择自界说安装,如许能够增加撑持的言语,好比简体中文等,毗连历程假如堕落的话请按前面的“处置毛病”实行,我没有碰着毛病)
viroot.sh
按以下请求修正:第98行,把SED=/usr/local/bin/sed改成SED=/bin/sed;第102行,把RMF=/bin/rm–f改成RMF="/bin/rm-f";第156行,把RUID=`/usr
/bin/id|$AWK-F({print$2}|$AWK-F){print$1}`改成RUID=`/usr/bin/id|$AWK-F({print$2}|$AWK-F){print$1}`。
./root.sh
回一次车;回到GUI,按OK。
处置毛病
(注:堕落的大概性是/usr/bin/ld的链接被变动,记着在安装binutils-2.10.91.0.2-3.i386.rpm以后要往变动)
呈现一个提醒框,说Errorininvokingtargetrelinkofmakefile/oracle/product/8.1.7/precomp/lib/ins_precomp.mk大概Errorininvokingtarget
relinkofmakefile/oracle/product/8.1.7/rdbms/lib/ins_rdbms.mk,回到终端:
exit
cd$ORACLE_HOME
tarzxvf/tmp/glibc-2.1.3-stubs.tar.gz
./setup_stubs.sh
链接事情完成后,回到GUI,按Retry;守候,直到安装完成;完成后主动启动的Net8设置导游没有反响,kill之。
恢复其他软件
su
rpm-e--nodepsbintutils-2.10.91.0.2-3
rpm-ivh/mnt/cdrom/Redhat/RPMS/binutils-2.13.90.0.18-9.i386.rpm(注:假如是下载的,地位大概纷歧样)
cd/usr/local
rmjava
(注:增补入手下手)
安装JAVA
1、#cpj2sdk-1_4_2_05-linux-i586-rpm.bin到/usr/local
2、#chmod755j2sdk-1_4_2_05-linux-i586-rpm.bin
3、#./j2sdk-1_4_2_05-linux-i586-rpm.bin(解出j2sdk-1_4_2_05-linux-i586.rpm)
4、#rpm-ivhj2sdk-1_4_2_05-linux-i586.rpm
rpm安装很便利,不必保佑了。
(注:增补停止)
ln-s/usr/java/j2sdk1.4.2_05java
(注:本来是j2sdk1.4.2_01,我如今从网下载到的是j2sdk1.4.2_05,倡议安装完后本人往反省一下。我用的是“ln-s/usr/java/j2sdk1.4.2_05/usr/local/
java”,忧虑又出来链接不合错误的情形)
cd/usr/bin
rmgccccld
mv./saved/*.
rmdirsaved
cd/usr/lib
mv./saved/*.
rmdirsaved
然后把oracle用户情况变量LD_LIBRARY_PATH中的glibc的部分删往。
创立数据库
exit
cd$ORACLE_HOME/bin
unsetLANG
unsetNLS_LANG
./dbassist
选择创立数据库;定制;多用处;下一步;共享服务器形式;往失落一切选项(创立JServer的工夫巨长);设置全局数据库名和SID,假定全局数据库名为testdb
,SID为orcl;变动字符集:字符集为UTF8、国度字符集为ZHS16GBK;六次下一步;完成。
设置Net8
./netca
利用netca是由于netasst老是没有反响,让我们小看它吧。选择监听程序设置;增加;监听程序名利用默许的LISTENER;三次下一步。
下面步骤便是对$ORACLE_HOME/network/admin/listener.ora的编纂:
#copyright(c)1997bytheOracleCorporation
#
LISTENER=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))
(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC)))
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(GLOBAL_DBNAME=testdb)
(SID_NAME=orcl)
(ORACLE_HOME=/oracle/product/8.1.7)
)
)
个中GLOBAL_DBNAME、SID_NAME、和ORACLE_HOME随实践情形分歧而分歧。
手工启动数据库和监听
vi/etc/oratab
把最初的N改成Y。
./dbstart
./lsnrctlstart
设置服务
su
cd/etc/init.d
vioracle
(注:内容入手下手,能够在非Linux情况下天生然后复制已往,注重要往失落0D字符)
#!/bin/bash
#
#StartupscriptforOracleandlistener
#
#chkconfig:35991
#description:Oracle8.1.7.0.1
#Setupenvironmentforscriptexecution.
./oracle/.bash_profile(注:给oracle用户设置的目次有变时必要变动此处)
case"$1"in
start)
echo"StartingOracledatabase(s)listedin/etc/oratab..."
sleep2
su-oracle-c"$ORACLE_HOME/bin/dbstart"
echo"StartingTNSlistener..."
sleep2
su-oracle-c"$ORACLE_HOME/bin/lsnrctlstart"
touch/var/lock/subsys/oracle
;;
stop)
echo"StoppingTNSlistener..."
sleep2
su-oracle-c"$ORACLE_HOME/bin/lsnrctlstop"
echo"StoppingOracledatabases(s)listedin/etc/oratab..."
sleep2
su-oracle-c"$ORACLE_HOME/bin/dbshut"
rm-f/var/lock/subsys/oracle
;;
status)
ps-ax|grep-eora_-etnslsnr
;;
*)
echo"Usage:oracle{start|stop|status}"
exit1
esac
exit0
(注:内容停止)
chmod700/etc/init.d/oracle
/sbin/chkconfig--addoracle
利用启动剧本启动和封闭
/etc/init.d/oraclestart
/etc/init.d/oraclestop
(注:到此安拆卸置完成,今后每次启动/封闭体系时oracle服务城市主动启动/中断)
(注:有些情形会提醒权限不敷,就改用root操纵,至于哪一步该用oracle哪一步该用root,操纵过程当中看情形而定,倡议优先利用oracle)
参考工具:winscp366setup.exe-SetupforWinSCP3.6.6(SCP/SFTPclientforWindows),用于在Windows下毗连到Linux并操纵文件
”由于MySQL已经是一个运行了众多知名Web2.0网站的数据,包括Craigslist、Digg、Wikipedia和Google等,或许我们可以说每一个Web2.0公司实质上是一个使用MySQL数据库的公司。 |
|