RedHatLinux AS3 U2 安装 oracle9204
中国it实验室 【转载】 2009年03月25日 18:05
双CPU1.6GHZ 内存2G
Red Hat Linux AS3 下安装 ORACLE9.2.0.4
首先,准备安装需要的软件包和补丁包:
从网上下载升级补丁包,用于将Oracle9.2.0升级到9.2.0.4:
p3006854_9204_LINUX.zip
所有的补丁说明如下:
p3095277_9204_LINUX.zip 9.2.0.4.0的升级补丁包.
p3006854_9204_LINUX.zip 在运行 runInstaller 之前打.
p3119415_9204_LINUX.zip 在升级到9.2.0.4.0之后打.
p2617419_210_GENERIC.zip 打3119415补丁所需要的补丁.
1.用rpm -qa│grep compat 查看系统中是否安有以下几个软件包:
加载文件命令:#rpm –ivh /mnt/cdrom/RedHat/RPMB/file.rpm
compat-libstdc++-7.3-2.96.122
compat-gcc-c++-7.3-2.96.122
compat-libstdc++-devel-7.3-2.96.122
compat-db-4.0.14-5
compat-gcc-7.3-2.96.122
tcl-devel-8.3.5-92.i386.ipm
其他相关软件包(安装上述软件包时可能需要):
glibc-kemheadsers-2.4-8.34.i386.rpm
glib-headers-2.3.2-95.20.i386.rpm
glib-derel-2.3.2-95.20.i386.rpm
2. rpm -qa │ grep openmotif查看下列软件包
openmotif21-2.1.30-8
3. rpm -qa │ grep setarch查看:
setarch-1.3-1
第二,准备安装过程中需要的用户和用户组
在安装的过程中我们使用两个用户同时进行,其中一个是root用户,另外一个是你新建立的oracle用户。
1、打开一个终端,以root用户登录或者是:su - root
2、建立oracle 用户和密码
# groupadd oinstall (在安装oracle时UNIX Group name:oinstall)
# groupadd dba
# useradd -g oinstall -G dba oracle
# passwd oracle
第三,安装准备步骤.
1、准备文件目录:
# mkdir -p /opt/ora9/product/9.2
# mkdir /var/opt/oracle
# chown oracle.dba /var/opt/oracle
# chown -R oracle.dba /opt/ora9
注:如果提示参数太少,可以在目录属性-权限 直接设置成 oracle 权限 dba
2、设置内核参数,调节信号灯及共享内存:
修改 /etc/sysctl.conf 这个文件,加入以下的语句:
kernel.shmmax = 2147483648 (机器内存2G,如果你的没这么大可相应设置小些)
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
sem 4个参数依次为SEMMSL(每个用户拥有信号量最大数);SEMMNS(系统信号量最大数);SEMOPM(每次semopm系统调用操作数);SEMMNI(系统辛苦量集数最大数).
Shmmax 最大共享内存2GB 物理内存如果小的话可以设置成 536870912.
Shmmni 最小共享内存 4096KB.
Shmall 所有内存大小.
设置完成后用命令 more /etc/sysctl.conf |grep kernel.s 检查.
3、设置oracle对文件的要求:
编辑文件:/etc/security/limits.conf 加入以下语句:
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
4、设置系统环境:
首先设置root用户这个终端的。
export ORACLE_BASE=/opt/ora9
export ORACLE_HOME=/opt/ora9/product/9.2
(Oracle被安装在这些位置)
5.设置oracle用户的环境, 新开一个终端,
su - oracle
***注意一定要新开一个 ***
打开.bash_profile文件,将如下内容加入:
(命令vi \$HOME/.bash_profile 编辑用VI使用可查手册 I 进入edit ;w 存盘 ;q退出)
#oracle 9i
export DISPLAY=”192.9.200.24:0.0” (127.0.0.1:0.0)
export ORACLE_BASE=/opt/ora9
export ORACLE_HOME=/opt/ora9/product/9.2
export PATH=\$ORACLE_HOME/bin:\$ORACLE_HOME/Apache/Apache/bin:\$PATH
export ORACLE_OWNER=oracle
export ORACLE_SID=ora9i (数据库全局变量名)
export ORACLE_TERM=xterm (xterm窗口模式 vt100 终端调试模式)
export LD_ASSUME_KERNEL=2.4.1
export THREADS_FLAG=native
export LD_LIBRARY_PATH=/opt/ora9/product/9.2/lib:\$LD_LIBRARY_PATH
export PATH=/opt/ora9/product/9.2/bin:\$PATH
export NLS_LANG=AMERICAN (设置语言AMERICAN英文)
export ORA_NLS33=\$ORACLE_HOME/ocommon/nls/admin/data
保存后退出. 执行: source .bash_profile 查看 set | more
然后。退出登录,再次进入,这时候oracle的环境就已经生效了.
6、解压文件,安装前打补丁,切换到root用户的控制台:(注:打补丁前执行以下语句)
#su – root
#mv /usr/bin/gcc /usr/bin/gcc323
#ln –s /usr/bin/gcc296 /usr/bin/gcc
#mv /usr/bin/g++296 /usr/bin/g++
#ln –s /usr/bin/g++ /usr/bin/g++296
第四,开始正式安装
1、建立oracle安装临时目录 su - root
#cd /home
#mkdir ora9i
#cd ora9i
这些目录你可以自己定义,用来存放安装文件。
2.解gz文件 (窗口模式解压不会把原档案删除,终端模式解压后自动删除原档案)
#gunzip gunzip lnx_920_disk1.cpio.gz
#gunzip lnx_920_disk2.cpio.gz
#gunzip lnx_920_disk3.cpio.gz
3.释放cpio文件
#cpio -idmv < lnx_920_disk1.cpio
#cpio -idmv < lnx_920_disk2.cpio
#cpio -idmv < lnx_920_disk3.cpio
//这个步骤将生成三个文件夹:DISK1, DISK2, DISK3
root身份运行,在/home/ora9i
p3006854_9204_LINUX.zip 补丁安装:(已经将补丁解压到光盘)
#unzip p3006854_9204_LINUX.zip
#cd /home/ora9i /3006854
#sh rhe13_pre_install.sh
Applying patch...
Patch successfully applied
4.完成Oracle的安装:
新开一个控制终端(用root用户开)
#xhost +192.168.0.2 (本地IP地址)
(xhost disable访问控制,客户端可以从任何主机进行连接)
这个命令用来保证oracle用户调用X11,否则无法安装
#su - oracle
在登录终端中切换到oracle用户:
在oracle主目录里运行:# /home/ora9i/Disk1/runInstaller
**********************************************
安装过程中的注意事项:
1.在安装中让你输入 UNIX group name:oinstall (#groupadd oinstall)
如果提示orainstRoot.sh权限问题,在root终端下执行:
#sh /tmp/orainstRoot.sh 然后继续
2.在安装中选择 software only 不要建数据库
3. 安装过程中提示/opt/ora9/product/9.2 权限问题,可另开窗口修改权限为oracle-dba
在结束的时候还会提示权限问题,另开窗口修改权限为root-root
注意的是以下几点:
Relink阶段,会出两个错误:ins_oemagent.mk 和 ins_ctx.mk. 点 Ignore 忽略.
在部分文档里,要求oracle用户的bash_profile文件中降LD_ASSUME_KERNEL设置为2.4.19,千万不要这样设置,否则会在Rlink时会有一大堆报错
再安装过程中,系统会提醒你用root身份去执行两个sh文件,再root的登录终端中按提示操作就可以了
如果有NLS的错误提示,可以#unset LANG命令,把语言默认成英文.
************************************************
5.开始升级oracle su - oracle
安装结束后,HTTPD会自动运行.在升级之前,需要将它停下来.
\$ cd \$ORACLE_HOME/Apache/Apache/bin
\$ apachectl stop
./apachectl stop: httpd stopped
LISTENER也需要停下来.
\$ lsnrctl stop
LSNRCTL for Linux: Version 9.2.0.1.0 - Production on 07-NOV-2003 16:25:41
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
Connecting to (ADDRESS=(PROTOCOL=tcp)(PORT=1521))
The command completed successfully
注意: 如果不停的话,oracle会提示不能覆盖文件.这个时候再去将服务停下来也可以,点Retry就可以了.
开始打补丁升级.
注意打补丁时使用root用户,切换到root用户控制台:
解包:
# unzip /home/ora9i/p3095277_9204_LINUX.zip
Archive: p3095277_9204_LINUX.zip
inflating: 9204_lnx32_release.cpio
inflating: README.html
inflating: patchnote.css
(会在/home/ora9/Disk1下自动生成9204_lnx32_release.cpio)
# cpio –idmv < /home/ora9/Disk1/9204_lnx32_release.cpio
做完这个后,再切换到oracle用户控制台, 再次运行/home/ora9i/Disk1/runInstaller升级,注意必须先选择最下面的安装选项,安装OUI
要不然没有办法打那个最上面的升级补丁。
升级完OUI后,要退出,再次运行/home/ora9i/Disk1/runInstaller
选择第一个选项,将Oracle升级到9.2.0.4。
这时候还是会有一个错误出现。再次选择忽略它。
安装过程中如果出现/opt/ora9/product/9.2 没有权限,直接找到文件夹更改权限.
6.打其他的补丁:
切换到root的终端。
首先安装 opatch.
# unzip p2617419_210_GENERIC.zip
Archive: p2617419_210_GENERIC.zip
creating: OPatch/
creating: OPatch/docs/
inflating: Opatch/docs/FAQ
......
inflating: README.txt
#pwd (查看执行权限)
#export PATH=\$PATH:/home/ora9i/Opatch:/sbin
(修改PATH时要要包括解压缩出来的Opatch 和 sbin目录)
# unzip p3119415_9204_LINUX.zip
Archive: p3119415_9204_LINUX.zip
creating: 3119415/
inflating: 3119415/README.txt
# cd 3119415
# opatch apply
****如果提示HOME变量错误可执行语句:****
#export ORACLE_BASE=/opt/ora9
#export ORACLE_HOME=/opt/ora9/product/9.2
出现success的提示就全部安装成功.
(出现选择ORACLE_HOME=/opt/ora9/product/9.2选择N)
最后切换到oracle终端
#dbca (如果有乱码执行:#unset LANG)
建oracle数据库
(查看安装完成后的检查和测试内容)
***************************************
可能会出现错误提示: /etc/oratab file doesn’t exist
可执行下面语句:
#cd /opt/ora9/product/9.2/install/utl
#sh root.sh
****************************************
数据库建立完成后挂起oracle
启动oracle监听
\$lsnrctl
lsnrctl>status (查状态)
lsnrctl>start
检查oracle服务是否挂起
\$ps –ef |grep ora
连接数据库
\$sqlplus /nolog
SQL>connect / as sysdba
SQL>startup mount
检查是否连接oracle
SQL>select sysdate from dual;
Sp2-0640:Not connected
挂起
SQL>startup
**************************************************
如果出现错误信息:
ORA-01078:failucr in processing system parameters
LRM-00109:could not open parametet file/opt/ora9/product/9.2/dbs/initora9i.or
执行:
#cp /opt/ora9/admin/orcl/pfile/init.ora.613200412101
/opt/ora9/product/9.2/dbs/initora9.ora vnc server配置
1。使用root用户启动系统的vncserver服务;
#service vncserver start
2。然后切换到登陆用户下面,我这里假设要使用oracle系统帐户进行远程登陆
#su - oracle
3。使用oracle用户输入以下命令:
\$vncserver
如果是第一次运行,则系统会出现提示信息,提示你输入密码,这是通过终端进行登陆时需要输入的;
另外,还有一个数字信息,这个也是需要在终端登陆时输入的,即冒号后面跟着的一个数字,如:1 ,:2等等,需要记住;
4。在windows客户端使用vncviewer,输入如下:xxx.xxx.xxx.xxx:1 或者xxx.xxx.xxx.xxx:2等,后面的数字需要和服务器端的对应才行;xxx是你服务器的ip地址了;
[linux as 5] 软件要求
其他所需程序包的版本(或更高版本):
gcc-2.96-124
make-3.79
binutils-2.11
openmotif-2.1.30-11
glibc-2.2.4-31
要查看系统上安装了这些程序包的哪些版本,运行以下命令:
rpm -q gcc make binutils openmotif glibc setarchp4198954_21_linux.zip 在运行 runInstaller 之前打.
rpm -ivh compat-oracle-rhel4-1.0-5.i386.rpm (p4198954_21_linux.zip)
(不打PATH也可以)
安装 libaio-0.3.102-1.i386.rpm 和libaio-devel0.3.102-1.i386.rpm
在Red Hat Enterprise Linux 介质的第三张 CD
以 root 用户身份运行以下命令:
rpm -ivh /mnt/cdrom/RedHat/RPMS/ libaio-0.3.102-1.i386.rpm
创建数据库安装的准备工作:
1,创建user/group;
groupadd dba
groupadd oinstall
useradd oracle -g oinstall -G dba
passwd oracle
如果nobody用户不存在(id nobody命令查看),则创建:
useradd nobody2,建立oracle安装文件夹(sample);
mkdir -p /opt/oracle/10.2.0.1 /opt/oracle/oradata /opt/oracle/archivelog
chown -R oracle.oinstall /opt/oracle
chmod 755 -R /opt/oracle2, 配置环境变量;
要使用 Oracle 产品,应该或必须设置几个环境变量。
如果您在同一服务器上安装了多个 Oracle 产品或数据库,则 ORACLE_HOME、ORACLE_SID 和 PATH 变量可能会更改。
ORACLE_BASE 变量不应更改,并可以在需要时在您的登录配置文件中设置它。Oracle 提供了一个称作 oraenv 的实用程序来设置其他变量。
对于数据库服务器,建议设置以下环境变量:
使用root用户:
vi /home/oracle/.bash_profile
以下是配置文件的内容
ORACLE_BASE=/opt/oracle
ORACLE_HOME=/opt/oracle/10.2.0.1
ORACLE_SID=ge01
PATH=\$ORACLE_HOME/bin:\$ORACLE_HOME/OPatch:\$PATH
TNS_ADMIN=\$ORACLE_HOME/network/admin
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
LANG=AMERICAN_AMERICA.ZHS16GBK
export PATH ORACLE_BASE ORACLE_HOME ORACLE_SID TNS_ADMIN NLS_LANG LANG
4, 设置系统参数;
Oracle 数据库 10g 需要以下所示的内核参数设置。
一般情况下可以设置最大共享内存为物理内存的一半,如果物理内存是 2G,则可以设置最大共享内存为 1073741824,
如上;如物理内存是 1G,则可以设置最大共享内存为 512 * 1024 * 1024 = 536870912;以此类推。在redhat上最大共享内存不建议超过
4*1024*1024*1024-1=4294967295切换到root用户:
su root
修改vi /etc/sysctl.conf, 添加:
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=262144
net.core.rmem_max=262144
net.core.wmem_default=262144
net.core.wmem_max=262144修改后运行"/sbin/sysctl -p"命令使得内核改变立即生效;
B) 设置oracle对文件的要求:
编辑文件:vi /etc/security/limits.conf 加入以下语句:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536编辑文件:vi /etc/pam.d/login 加入以下语句(可能应该加在最后一条规则之前):session required /lib/security/pam_limits.so设置oraInst.loc文件:
[root@enterprice64 ~]#vi /etc/oraInst.loc
inventory_loc=/opt/oracle/oraInventory
inst_group=oinstall
[root@enterprice64 ~]#chown oracle.oinstall /etc/oraInst.loc
确保/etc/oraInst.loc中包含上面的信息,且Oracle包含访问权限。5.解压缩Oracle10G的安装文件 :
使用Oracle用户登陆:
su - oracle
在/home/oracle 上传和解压缩10201_database_linux32.zip:
unzip 10201_database_linux32 6.开始安装oracle
L i n u x 命令行环境下安装(也可以在图形界面下安装)使用Oracle用户登陆:
su - oracle
根据希望安装的数据库版本类型选择Silent安装模式的response_file文件的类似,比如:enterprise.rsp、standard.rsp还是custom.rsp。
这里选择enterpise.rsp类型,安装盘中的database/response目录下对应的response文件拷贝出来,根据文件里面的提示对输入值进行修改。
比如这个例子中对如下的参数进行设置:
UNIX_GROUP_NAME="oinstall"
FROM_LOCATION="/home/oracle/database/stage/products.xml"
ORACLE_BASE="/opt/oracle"
ORACLE_HOME="/opt/oracle/10.2.0.1"
ORACLE_HOME_NAME="OraDbHome1"
SHOW_INSTALL_PROGRESS_PAGE= true
SHOW_END_OF_INSTALL_MSGS= true
COMPONENT_LANGUAGES={"zh_CN"}
s_nameForDBAGrp= "dba"
s_nameForOPERGrp="dba"
INSTALL_TYPE="EE"
n_configurationOption=3
RESTART_SYSTEM=false
RESTART_REMOTE_SYSTEM=false注意,所有的字符串需要放在双引号中,注意大小写。数字和布尔变量直接写就可以。
由于这里没有选择建立数据库而只安装软件,因此没有设置数据库相关的配置参数。[oracle@enterprice64 data]\$ chmod 700 enterprise.rsp
面可以开始SILENT安装了:
注意,响应文件需要使用绝对路径。
cd /home/oracle/database
[oracle@enterprice64 database]\$ ./runInstaller -silent -responseFile /home/oracle/enterprise.rsp用root执行如下脚本:
/opt/oracle/10.2.0.1/oraInventory/orainstRoot.sh
/opt/oracle/10.2.0.1/root.sh
不过这里Oracle存在一个bug,在root.sh脚本中,自动将OUI_SILENT参数设置为TRUE,而后的检查中,
如果发现这个值为TRUE,那么这个脚本运行会自动退出了。这里需要手工将其修改为false,
最后使用root执行一下\$ORACLE_HOME/root.sh脚本就可以了。根据提示按 Enter 就可以了。
这样就在字符下成功安装了。通过SILENT模式安装数据库之后,下面继续使用SILENT模式进行数据库的建立,
仍然是拷贝安装目录下的/home/oracle/database/response/dbca.rsp到安装目录,并进行编译,
根据数据库建立方式的不同编辑不同的数据库库选项。
比如在本次安装过程中设置了下列参数:
RESPONSEFILE_VERSION = "10.0.0"
OPERATION_TYPE = "createDatabase"
GDBNAME = "ge01"
SID = "ge01"
TEMPLATENAME = "New_Database.dbt"
SYSPASSWORD = "georacle"
SYSTEMPASSWORD = "georacle"
DATAFILEDESTINATION ="/opt/oracle/oradata/"
RECOVERYAREADESTINATION="/opt/oracle/flash_recovery_area"
STORAGETYPE=FS
CHARACTERSET = "ZHS16GBK"
MEMORYPERCENTAGE = "40"
SCRIPTDESTINATION ="/opt/oracle/admin/ora10g/scripts"
EMCONFIGURATION=”LOCAL”
SYSMANPASSWORD = "georacle"
DBSNMPPASSWORD = "georacle"其中最后1项不是必须的,这个的目的是在建立数据库的同时生成脚本。
下面就可以开始SILENT模式的数据库创建了:
[oracle@enterprice64 database]\$ dbca -silent -responseFile /home/oracle/dbca.rsp
用root执行如下脚本:
/opt/oracle/10.2.0.1/oraInventory/orainstRoot.sh最后可以利用netca来SILENT方式设置网络部分,同样的方法设置netca.rsp:
RESPONSEFILE_VERSION="11.1"
CREATE_TYPE= "CUSTOM"
SHOW_GUI=false
LOG_FILE=""/opt/oracle/10.2.0.1/network/tools/log/netca.log""
INSTALLED_COMPONENTS={"server","net8","javavm"}
INSTALL_TYPE=""typical""
LISTENER_NUMBER=1
LISTENER_NAMES={"LISTENER"}
LISTENER_PROTOCOLS={"TCP;1521"}
LISTENER_START=""LISTENER""
NAMING_METHODS={"TNSNAMES","ONAMES","HOSTNAME"}
设置的参数包括上面的部分,然后就可以使用netca启动silent配置:
[oracle@enterprice64 database]\$ netca /silent /responsefile /home/oracle/netca.rsp----------------------------------------------------------------静默卸载Oracle数据库ge01
dbca -silent -deleteDatabase -sourceDB <source database sid> [-sysDBAUserName <user name with SYSDBA privileges> -sysDBAPassword <password for sysDBAUserName user name>]
例如:dbca -silent -deleteDatabase -sourceDB ge01 -sysDBAUserName sys -sysDBAPassword georacle静默卸载Oracle数据库软件
执行以下命令静默卸载Oracle数据库软件
\$./runInstaller -silent -deinstall -removeallfiles -removeAllPatches "REMOVE_HOMES={\$ORACLE_HOME}" -responseFile ~/enterprise.rsp---------------------------------------------------------------------------------------(一)图形界面开始安装:
1.以oracle用户登录X-WINDOWS系统,进行Oracle的安装(远程安装需打开XDM):[ linux 5}
export DISPLAY=
cd /opt/database (或者你解压缩安装程序包的目录)
./runInstaller 或者./runInstaller -ignoreSysPrereqs
过一会儿就会出现Oracle的X安装界面注意:
1、选择advance install
2、数据库home设置为/opt/oracle/10.2.0.1
3、数据库全局名称设置为ge01
4、数据库字符集选Simplified Chinese ZHS16GBK2.其他用默认设置!
注意:安装过程中会提示以root用户登陆执行一些脚本 ,执行后再按“ok”按钮继续安装。
3、登陆并启动数据库的操作。
su - oracle
[oracle@oracle oracle]\$ lsnrctl start
[oracle@oracle oracle]\$ sqlplus /nolog
SQL*Plus: Release 9.2.0.0 - Production on Sat Mar 12 22:58:53 2005
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
SQL> connect / as sysdba
Connected.
SQL> startup; 启动数据库
ORACLE instance started.
Total System Global Area 236000356 bytes
Fixed Size 451684 bytes
Variable Size 201326592 bytes
Database Buffers 33554432 bytes
Redo Buffers 667648 bytes
Database mounted.
Database opened.SQL> shutdown immediate ;关闭数据库 (OR "dbshut" command)
Database closed.
Database dismounted.
ORACLE instance shut down.4, dbstart脚本修改
数据库创建完成后,修改vi /etc/oratab,把ge01:/opt/oracle/10.2.0.1:N那一行最后的N改成Y,
修改vi /opt/oracle/10.2.0.1/bin/dbstart中ORACLE_HOME_LISTNER=/opt/oracle/10.2.0.1
然后执行dbstart启动数据库数据库可能无法启动,报告Can’t find init file …的错误,需要复制一个初始化文件:
cp /opt/oracle/admin/ge01/pfile/init.ora.* /opt/oracle/10.2.0.1/dbs/initge01.ora
重新执行dbstart就可以了。可以执行dbshut 停止ORACLEvi /etc/rc.local 加入下面一行 起动ORACLE ON system boot
su - oracle -c "lsnrctl start"
su - oracle -c "dbstart" 5. 为了root方便管理,可以写一个启动脚本
vi /etc/init.d/ora10g
#!/bin/bash
#
# chkconfig: 2345 91 19
# description: starts the oracle listener and instance status() {
pid=`ps -ef | grep ora_pmon | grep -v grep | awk '{print \$8}'`
if [ "X\$pid" = "X" ]
then
echo "oracle10g is not running."
exit 1
else
echo "oracle10g is running."
exit 0
fi
}case "\$1" in
start)
#startup the listener and instance
echo -n "oracle begin to startup: "
su - oracle -c "lsnrctl start"
su - oracle -c dbstart
echo "oracle10g started"
;;
stop)
# stop listener, apache and database
echo -n "oracle begin to shutdown:"
su - oracle -c "lsnrctl stop"
su - oracle -c dbshut
echo "oracle10g shutdowned"
;;
reload|restart)
\$0 stop
\$0 start
;;
'status')
status
;;
*)
echo "Usage: ora10g [start|stop|reload|restart]"
exit 1
esac
exit 0 存为ora10g后,然后
chmod a+x /etc/init.d/ora10g
即可在以后以root身份运行/etc/rc.d/init.d/ora10g start |stop 来管oracle的启动和停止了。
如果要将这个脚本加入到系统中使其可开机运行,那么要运行以下命令:
chkconfig --level 35 ora10g on
6, 关于数据库删除重新安装的问题:
1 . 去除 /usr/local/bin 目录 下的 coraenv dbhome oraenv
2 . 去除 /etc/oratab , /etc/oracle
3 . 去掉安装 目录 /opt/oracle 目录下的 product admin oradata oralnventor 目录 。
# userdel -r oracle
# groupdel dba oinstall
rm -rf /tmp/ora*
rm -rf /opt/oracle/*
rm -rf /opt/ORCLfmap
rm -f /etc/ora*
rm -f /usr/local/bin/oraenv
rm -f /usr/local/bin/coraenv
rm -f /usr/local/bin/dbhome
7.修改Oracle10g数据库字符集
SQL> connect sys/oracle as sysdba
SQL> startup mount
SQL> alter session set sql_trace=true;Session altered.SQL> alter system enable restricted session;System altered.SQL> alter system set job_queue_processes=0;System altered.SQL> alter system set aq_tm_processes=0;System altered.SQL> alter database open;Database altered.SQL> set linesize 120;
SQL> alter database character set zhs16gbk;
alter database character set zhs16gbk
*
ERROR at line 1:
ORA-12712: new character set must be a superset of old character setSQL> ALTER DATABASE character set INTERNAL_USE zhs16gbk; # 使用INTERNAL_USE可以跳过超集的检查,ALTER DATABASE character set INTERNAL_USE Database altered.SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> STARTUP
SQL> select name,value\$ from props\$ where name like '%NLS%';NLS_CHARACTERSET
ZHS16GBK8. oracle database异机备份脚本
su - oracle
mkdir /home/oracle/dbbackup(1)vi /home/oracle/dbbackup/bachupdb.sh
#!/bin/bash
#As oracle user, chmod 744 /home/oracle/dbbackup/DBbackuprecover.sh
#crontab -e 35 1 * * * /home/oracle/dbbackup/DBbackuprecover.sh >/dev/null 2>&1
#@tip: modify local database's home directory
#@tip <ip> is remote database ip addressexport ORACLE_HOME=/opt/oracle/10.2.0.1
export PATH=\$ORACLE_HOME/bin:\$PATH:
export NLS_LANG=AMERICAN_AMERICA.zhs16gbk
export LANG=AMERICAN_AMERICA.ZHS16GBK
export ORACLE_SID=ge01dmpfile=gedb_`date +%F`.dmp
logfile=gedb_`date +%F`.log
restoredblog=restoredb_`date +%F`.log
WORK_DIR=~/dbbackupcd \$WORK_DIR
exp USERID=gedb/gegedb@<ip>/ge01 file=\$dmpfile log=\$logfile owner=gedb
if [ 0 -eq "\$?" ]
then
sqlplus / as sysdba @user.sql
imp USERID=gedb/gegedb file=\$dmpfile log=./\$restoredblog fromuser=gedb touser=gedb
find ./*.dmp -type f -mtime +7 -exec rm {} ;
find ./*.log -type f -mtime +30 -exec rm {} ;
exit 0
else
echo "backup error,quit!" > \$logfile
exit 1
fi
#@tip ip地址修改为要备份的oracle的主机地址
exp USERID=gedb/gedb@10.248.1.5/ge01 file=\$dmpfile log=\$logfile owner=gedb direct=y (2)更改脚本权限:
chown oracle.oinstall backupdb.sh
chmod 744 backupdb.sh
(3)以oracle user role
crontab -e
35 2 * * * /home/oracle/dbbackup/backupdb.sh 9. restore oracle backup
(1) 先创建gedb用户和授权:
su - oracle
sqlplus / as sysdba @createUser.sql
(2)imp USERID=gedb/gegedb file=110.dmp fromuser=gedb touser=gedb
如果要第二次IMP操作要先删除用户gedb,再新建用户gedb,这样imp才不会出错.
DROP USER gedb CASCADE;
CREATE USER gedb IDENTIFIED BY gegedb;
GRANT UNLIMITED TABLESPACE TO gedb;
GRANT CONNECT TO gedb;
GRANT RESOURCE TO gedb;
GRANT DBA TO gedb;
10. oracle优化 SQL> alter system set "_kgl_large_heap_warning_threshold"=8388608 scope=spfile ; (ONLY FOR 10.2.0.1.0 )
SQL> shutdown immediate
SQL> startup
11.BUG FIX(1)10g EM乱码之快速解决
[oracle@danaly ~]\$ cd \$ORACLE_HOME/jdk/jre/lib
[oracle@danaly lib]\$ ls font*zh_CN*
font.properties.zh_CN.Redhat font.properties.zh_CN.Redhat2.1
font.properties.zh_CN.Sun font.properties.zh_CN_UTF8.Sun [oracle@danaly lib]\$ cd \$ORACLE_HOME/jre/1.4.2/lib/
[oracle@danaly lib]\$ ls font*zh_CN*
font.properties.zh_CN.Redhat font.properties.zh_CN.Redhat2.1
font.properties.zh_CN.Sun font.properties.zh_CN_UTF8.Sun 我们只要用合适的中文字符集文件替换缺省文件即可,我选择使用font.properties.zh_CN.Redhat来替换缺省字体定义文件: [oracle@danaly lib]\$ cp font.properties.zh_CN.Redhat font.properties 替换之后需要清理一下Cache,重启EM即可. Cache路径通常位于: \$ORACLE_HOME/oc4j/j2ee/oc4j_applications/applications/em/em/cabo/images/cache/zhs 清除所有gif文件即可.然后重新启动EM(2)10201上一个严重的BUG
环境 10201,AIX53
但据ORACLE解释,在任何操作系统版本都有此问题。现象:监听器启动后,隔一段时间(长短不定),就会出现无法
连接: 若是用10201版本的SQLPLUS,则会出现 NO LISTENER。
9207 版本的SQLPLUS,则会出现:没反应,HANG住。原因:10201 版本上的一个BUG:4518443。其会自动创建一个子
监听器,当出现此情况时,监听器将会挂起。
/opt/oracle/product/10g/network/log/listener.log有如下语句:
WARNING: Subscription for node down event still pending检查是否真因为此BUG造成此现象:
\$ ps -ef | grep tnslsnr
ora10g 8909 1 0 Sep 15 ? 902:44 /u05/10GHOME/DBHOME/bin/tnslsnr sales -inherit
ora10g 22685 8909 0 14:19:23 ? 0:00 /u05/10GHOME/DBHOME/bin/tnslsnr sales –inherit
正常情况只有一个监听器,而此BUG则会出现两个监听器。解决方法:
打补丁4518443
或者在listener.ora 文件里加入:
SUBSCRIBE_FOR_NODE_DOWN_EVENT_<listener_name>=OFF
其中,<listener_name> 是数据库的监听器的名称。如:
默认情况下,监听器名为:LISTENER 。则语句就是:
SUBSCRIBE_FOR_NODE_DOWN_EVENT_LISTENER=OFF
同时:
cd \$ORACLE_HOME/opmn/conf
mv ons.config ons.config.orig
重启监听程序:
lsnrctl stop
lncrctl start
- 相关阅读:
- ·深度操作系统15RC发布 你要转投Linux吗?
//server.zol.com.cn/559/5597069.html - ·服务器安全:CentOS 7中安装CSF防火墙
//server.zol.com.cn/548/5486088.html - ·IT审计:CentOS 6/7中 安装Open-AudIT
//server.zol.com.cn/557/5572319.html - ·游戏不支持Linux咋办?3种方法告诉你
//server.zol.com.cn/552/5525279.html - ·当不同国家遇到Linux时 会有什么结果?
//server.zol.com.cn/554/5545203.html