给我大神看看我这电脑硬件升级检测如何升级硬件(玩游戏)

linux开机启动oracle_oracle数据库_ThinkSAAS
linux开机启动oracle
linux开机启动oracle
内容来源: 网络
linux开机启动oracle
一、使用root用户修改/etc/oratab 文件:
$ vi /etc/oratab
orcl:/oracle/app/product/10.2.0/db_1:N
orcl:/oracle/app/product/10.2.0/db_1:Y
*(/oracle/app/product/10.2.0)这是我的oracle安装目录
二、使用Oracle用户修改$ORACLE_HOME/bin/dbstart文件:
# su - oracle
$ cd $ORACLE_HOME/bin
$ vi dbstart
找到 ORACLE_HOME_LISTNER=.....这行, 修改成
ORACLE_HOME_LISTNER=/u01/app/oracle/product/10.2.0/db_1
或者直接修改成:
ORACLE_HOME_LISTNER=$ORACLE_HOME
三、测试运行 dbshut, dbstart 看能否启动Oracle 服务及listener服务:
1.修改dbstart和dbshut的日志文件的权限:
$su - root
#cd $ORACLE_HOME
#chown oracle:oinstall startup.log
#chown oracle:oinstall shutdown.log
注:startup.log 和shutdown.log 可能没有,当你运行 ./dbstart 和 ./dbshut 之后才自动创建。
2.执行相应的脚本进行测试
#su - oracle
$cd $ORACLE_HOME/bin
$./dbstart (./dbshut)
Processing Database instance "orcl": log file /opt/oracle/product/10.2.0/startup.log
$ ps -efw | grep ora_
$ lsnrctl status
发现lsnrctl已经启动
[ bin]$ ps -efw | grep LISTEN | grep -v grep
1 0 13:33 ?
00:00:00 /opt/oracle/product/10.2.0/bin/tnslsnr LISTENER -inherit
四:创建服务
$su - root
# cd /etc/rc.d/init.d/
# vi oradbstart
复制如下脚本1或者脚本2内容到oradbstart文件:
(1) #开始的行不能少,否则后面运行chkconfig命令会报错:oradbstart 服务不支持chkconfig
(2) 根据自己的环境修改环境变量配置部分(蓝色字体位置)
(3) 从windows下面保存的如下脚本内容,通过ISO复制到linux,再将脚本复制到oradbstart文件中后
,在终端下用vi oradbstart命令打开,一些行后面可能有类似^M的字符,将其删除,否则在运行后面
的chkconfig命令后,在/etc/rc.d/rcN.d目录(N为运行级别)下生成的S99oradbstart文件是空的,可以
用vi查看S99oradbstart文件,内容应该和/etc/rc.d/init.d/oradbstart文件内容相同才是正确的
(第三种情况是我在xp下使用虚拟机VMWARE安装linux,并将如下脚本保存成文本文件,然后制作成ISO
文件,然后把ISO里面的文件的内容复制到oradbstart时遇到的,这种情况一些行后面类似^M的字符,
用gredit无法看到,只有使用vi才能看到)
--脚本1(数据库、监听、dbconsole、sqlplus)
#!/bin/bash
# chkconfig: 345 99 10
# description: Startup Script for Oracle Databases
# /etc/rc.d/init.d/dbstart
export ORACLE_BASE=/u01/app/oracle/
export ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1
export ORACLE_SID=orcl
export PATH=$PATH:$ORACLE_HOME/bin
ORA_OWNR="oracle"
# if the executables do not exist -- display error
if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
echo "Oracle startup: cannot start"
# depending on parameter -- startup, shutdown, restart
# of the instance and listener or usage display
case "$1" in
# Oracle listener and instance startup
echo -n "Starting Oracle: "
su - $ORA_OWNR -c "$ORACLE_HOME/bin/dbstart"
touch /var/lock/Oracle
su - $ORA_OWNR -c "$ORACLE_HOME/bin/emctl start dbconsole"
su - $ORA_OWNR -c "$ORACLE_HOME/bin/isqlplusctl start"
# Oracle listener and instance shutdown
echo -n "Shutdown Oracle: "
su - $ORA_OWNR -c "$ORACLE_HOME/bin/emctl stop dbconsole"
su - $ORA_OWNR -c "$ORACLE_HOME/bin/isqlplusctl stop"
su - $ORA_OWNR -c "$ORACLE_HOME/bin/dbshut"
su - $ORA_OWNR -c "$ORACLE_HOME/bin/lsnrctl stop"
rm -f /var/lock/Oracle
reload|restart)
echo "Usage: `basename $0` start|stop|restart|reload"
--脚本2(只启动数据库和监听)
#!/bin/bash
# chkconfig: 345 99 10
# description: Startup Script for Oracle Databases
# /etc/rc.d/init.d/oradbstart
export ORACLE_BASE=/u01/app/Oracle/
export ORACLE_HOME=/u01/app/Oracle/product/10.2.0/db_1
export ORACLE_SID=orcl
export PATH=$PATH:$ORACLE_HOME/bin
case "$1" in
su Oracle -c $ORACLE_HOME/bin/dbstart
# (注意,这里的Oracle就是你的oracle用户,区分大小写,否则会出现错误,下面也有个Oracle)
touch /var/lock/Oracle
echo -n "Shutdown Oracle: "
su Oracle -c $ORACLE_HOME/bin/dbshut
rm -f /var/lock/Oracle
echo "Usage: &basename $0& start|stop"
保存退出。
打开终端执行:
$su - root
#chown oracle.oinstall /etc/rc.d/init.d/oradbstart
#chmod 775 /etc/rc.d/init.d/oradbstart
然后执行:
chkconfig --add oradbstart
chkconfig --list oradbstart
chkconfig --list oradbstart运行结果:
oradbstart
0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
或者运行如下命令
chkconfig --level 345 oradbstart on
根据上面的运行结果,当相应的运行级别为on时(例如:5:on),在对应的/etc/rc.d/rcN.d(例如:和
5:on对应的是:/etc/rc.d/rc5.d)下面会生成一个文件:S99oradbstart,使用vi S99oradbstart打开
该文件,可以看到该文件的内容和/etc/rc.d/init.d/oradbstart内容相同,表示配置成功,其实
S99oradbstart是一个到/etc/rc.d/init.d/oradbstart的链接,我们可以使用file命令来查看:
$file /etc/rc.d/rc5.d/S99oradbstart
S99oradbstart:symbolic link to &../init.d/oradbstart
$ps -ef | grep oracle 查看Oracle相关的进程是否启动了
六.一点说明:
脚本文件中的:# chkconfig: 345 99 10
指出3,4,5级别启动这个服务,99是在相应的/etc/rc.d/rcN.d(N为前面指定的级别,这里是345)目录
下生成的链接文件的序号(启动优先级别)S99oradbstart,10为在除前面指出的级别对应
的/etc/rc.d/rcN.d(N为除345之外的级别)目录生成的链接文件的序号(服务停止的优先级别)
K10oradbstart。
命令说明:
ps:监控后台进程
-e 显示所有进程。
-f 全格式。
-h 不显示标题。
  -l 长格式。
-w 宽输出。
grep:是linux下用于搜索输出内容中所含内容的一个命令。
1.例如我要搜索名为aaa.txt中的一串字符"bbb",可以用
cat aaa.txt|grep bbb
2.我要搜索当前目录含有bb的文件,可以用
ls |grep bb
例:ps -efw | grep LISTEN | grep -v grep:查看含有LISTEN的监听,除去含有grep的监听。
chkconfig:功能说明:检查,设置系统的各种服务。
语  法:chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level &等级代号&][系
统服务][on/off/reset]
补充说明:这是Red Hat公司遵循GPL规则所开发的程序,它可查询操作系统在每一个执行等级中会执行
哪些系统服务,其中包括各类常驻服务。
参  数:
 --add  增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统启动的叙述文件内增
加相关数据。
 --del  删除所指定的系统服务,不再由chkconfig指令管理,并同时在系统启动的叙述文件内删除
相关数据。
列出所指定的系统服务。
 --level&等级代号&  指定读系统服务要在哪一个执行等级中开启或关毕。
注:runlevel可以认为是系统状态,形象一点,您可以认为runlevel有点象微软的windows操作系统中
的Normal,safemode,和Command prompt only。进入每个runlevel都需要启动或关闭相应的一系列服
务(services),这些服务(services)以初始化脚本的方式放置于目录/etc/rc.d/rc?.d/或者/etc/rc?.d
下面(?代表runlevel的对应序号)。
在大多数的linux发行版本中,通常有8个runlevel
Runlevel System State
0 Halt the system
Single user mode
2 Basic multi user mode
3 Multi user mode
5 Multi user mode with GUI
6 Reboot the system
S, s Single user mode
多数的桌面的linux系统缺省的runlevel是5,用户登陆时是图形界面;
而多数的服务器版本的linux系统缺省的runlevel是3,用户登陆时是字符界面;
runlevel 1和2除了调试之外很少使用;
runlevel s和S并不是直接给用户使用,而是用来为Single user mode作准备。
作者 evan_shen
PHP开发框架
开发工具/编程工具
服务器环境
ThinkSAAS商业授权:
ThinkSAAS为用户提供有偿个性定制开发服务
ThinkSAAS将为商业授权用户提供二次开发指导和技术支持
让ThinkSAAS更好,把建议拿来。
开发客服微信5257人阅读
oracle基础(30)
注意:oracle安装不能用root用户安装,必须新建用户安装
sqlplus命令不识别问题(bash :sqlplus command not found)
当你首次安装oracle后,也许会出现这种情况,第一次或许有点棘手,不知道如何改怎么办。这时不用着急,想想Linux里面的命令是如何运行的,如adduser等,我们发现是因为在/bin/文件夹下有这样的一个文件adduser,于是我们也想到了,把安装好的oracle中bin目录下的sqlplus文件拷贝到/bin文件目录下,
cp /opt/oracle/app/oracle/product/11.2.0/dbhome_1/bin/sqlplus /bin
路径名视oracle安装的具体路径而定。
拷贝后,终端中运行sqlplus,成功。
&&&&&& 注意:拷贝后,最好把执行权限给所有的用户,不然新建用户不能使用。
启动oracle服务问题
不同Linux系统oracle启动文件不同,如Ubuntu下,我们需要建立/etc/init.d/oracledb,而在kylin系统中,文件在/etc/init.d/dbora,但位置都大致相同,我们只需要仔细找找都可以找到这样的一个启动服务文件。当你运行这些文件时,注意oracledb或dbora里面的变量,ORACLE_HOME、ORACLE_SID、PATH等等,这些变量都需要我们根据自己所安装的oracle目录具体配置。配置时,使用命令export:
export ORACLE_HOME=/opt/oracle/app/oracle/product/11.2.0/dbhome_1/
3、lsnrctl、emctl等命令的识别问题(bash:lsnrctl/emctl command not found)
&&&&&& 当在运行lsnrctl时,或许会出现bash:lsnrctl/emctl command not found这样的错误,不用着急,这个问题和第一个sqlplus命令未找到是类似的,我们也只需把$ORACLE_HOME/bin目录下的lsnrctl文件拷贝到/bin目录下(记得像问题1一样,改变执行权限),就可以识别了。
&&&&&& 而当在终端中运行emctl时,或许会出现ORACLE_HOME未定义问题。Environment variable ORACLE_SID not defined. Please define it。这样根据提示,我们知道问题出在了哪,于是我们想,在哪里才能让它识别变量ORACLE_SID呢,Linux中都有几个通用的特定文件。如~/.profile ~/.bash_profile等等,~这个符号代表当前用户的主目录,如当前用户为user,这样~代表/home/user。上面给的几个文件都是用来配置用户环境的,如果你想让你所运行的脚本识别这些问题,都必须打开并在后面添加这些变量。
对于刚才$ORACLE_SID变量问题,解决方案就是在这些文件中添加ORACLE_SID,但是到底添加到哪个文件呢,你可以试着打开上面的这些文件,如果里面存在东西,那就加在里面,我的系统添加到的是~./bashrc,首先打开: vi ~./bashrc,然后添加
export ORACLE_SID=orcl,。然后 source ~./bashrc,使这个文件重新生效。
这样,lsnrctl、emctl都可以顺利通过了。
第一次安装oracle不能运行任何命令
第一次安装oracle后,发现sqlplus,lsnrctl等都不可以运行,即使把路径走到$ORACLE_HOME/bin目录下,也不可以。这是我是通过首先运行dbstart命令来解决的(走到安装目录的bin目录下运行)。
数据库必须启动
如果你上述都顺利通过了,但是当你用sqlplus登录进去的时候,总是出错。
登录使用默认方式:sqlplus / as sysdba。这是你应该是第一次登录到oracle数据库中,数据库还不能使用,这样你必须使用startup mount、startup open命令解决。这样数据库就打开了,你就可以使用整个数据库了。如果打开时失败了,你可以先shutdown下,先关闭再打开数据库。
不同用户使用oracle问题
当你新建一个用户时,你会发现emctl等其他一些命令又不可以使用了,这又是为什么呢?当我们看错误出现的地方,发现存在变量未定义,这样又回到了问题2、3了,因为这些变量未定义,所以不能够成功执行。根据Linux系统所提供的每个用户都有一个环境文件,(.profile .bash_profile .bashrc)等,按照问题3,我们只需在这些文件里面加入所需要的变量就可以了,步骤和问题3一样。
原帖链接http://dev.tot.name/db/html/.htm
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:488036次
积分:5257
积分:5257
排名:第4308名
原创:68篇
转载:180篇
评论:61条
(1)(1)(6)(2)(2)(2)(2)(1)(4)(1)(3)(3)(6)(1)(1)(13)(7)(29)(37)(32)(23)(6)(3)(1)(1)(1)(2)(2)(4)(23)(5)(1)(1)(1)(1)(1)(2)(2)(2)(3)(2)(3)(4)(3)

我要回帖

更多关于 电脑硬件升级 的文章

 

随机推荐