
用ssh工具连接linux,按以下步骤 *** 作执行。
1、用oracle用户登录进去。
2、export ORACLE_SID=QS5100J; 指定oracle数据库的instance的名称。“QS5100J”为oracle的sid名称。
3、sqlplus /nolog 连接到数据库的sqlplus中。
4、connect /as sysdba; 出现“Connected to an idle instance”停止连接到数据库的应用。
5、shutdown immediate; 关闭数据库,等待数分钟。
6、startup; 启动数据库。
自动执行:写在sql文件中,用符号“@”引入文件执行。
以下文件可以放sql文件中执行
connect /as sysdba;
shutdown immediate;
startup;
手动执行:手动时一行一行输入执行。
使用SSH工具以root用户登录到数据库服务器后,执行以下命令:
1、启动数据库实例
su – oracle
export ORACLE_SID=QS5100Z QS5100Z为数据库名
sqlplus /nolog
conn / as sysdba
startup
exit
emctl start dbconsole 启动控制台
2、启动数据库监听
输入:su – oracle
输入: lsnrctl start
3、查看是否启动成功
su - oracle
ps -ef|grep oracle
4、查看oracle监听状态
su - oracle
lsnrctl status
楼上的也是一种方法,不过对于新手来说可能不太清楚。我补充下
1在运行中输入lsnrctl start试试
2到开始-程序-Oracle home/配置和移植工具/Net Manager中为监听器添加一个服务名
3在Oracle安装目录下有一个文件名叫NETWORK/ADMIN/tnsnamesora的文件,打开后看前面的语句 比如
test1=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192168156)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = test1)
)
)
你在此文件复制粘贴,把test1换成你的数据库实例名/服务名 Ip地址换成你的Oracle数据库的服务器IP地址,我想就可以连上了
我们管理的有三台windows服务器都有这种情况,监听是一点都不敢动,而且重启之后还会d出对话框提示 监听遇到了问题需要关闭,不过这个时候监听还是可以用的,但是一旦手动lsnrctl stop listener之后就起不起来了,这个错误是只有在windows *** 作系统当中才有的,当时我们也没有解决只有重启系统才能把监听启起来,不然的话是没有什么办法启动监听的,最后换成了linux的版本后才稳定下来。 楼主可以考虑将数据库备份后重装一次系统,然后恢复数据库。具体做法是将$ORACLE_BASE/oradata/$ORACLE_SID/ 目录下的所有文件在停机状态下进行copy(包括redo、undo、temp、controlfile、其他数据文件保存起来)还有$ORACLE_HOME/dbs目录下的服务参数文件、密码文件保存下来 ,然后重装oracle,将sid设置为和当前一样的名称,停机将原来保存的文件替换到相应的位置,然后启动数据库即可。
要是这个还不能解决的话,那么就考虑重装系统,然后再安装数据了。 当然这个是最不得已的方法,要是有其他更直接的办法可以解决监听问题的话 那就可以去尝试。
1 停应用层的各种程序
2 停Oralce的监听进程
$ lsnrctl stop
3 手工切换重作日志文件,确保当前已修改过的数据存入文件:
SQL> alter system switch logfile;
4。关闭数据库
sql> shutdown immediate;
关闭数据库与实例也分为3步:关闭数据库-->实例卸载数据库--->终止实例
1 修改监听器配置文件
Linux下Oracle监听器配置文件在:$ ORACLE_HOME/network/admin/listererora, 如:
/bank/oracle/oracle10g/product/1020/network/admin/listenerora
修改并配置要监听SID的相关信息,如:
#listenerora Network Configuration File: /bank/oracle/oracle10g/product/1020/network/admin/listenerora
# Generated by Oracle configuration tools
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /bank/oracle/oracle10g/product/1020)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL DBNAME = bkserver)
(SID_NAME = bkserver)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10713242)(PORT = 1521))
)
)
2 启动监听器
(1) 切换至oracle安装用户(一般为oracle)
su - oracle
(2) 启动监听器
lsnrctl start
另:停止监听器
lsnrctl stop
3 测试监听器是否运行正常
在客户端修改tnsnamesora配置文件就访问Oracle数据库,如:
BKSERVER =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10713242)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = BKSERVER)
)
)
通过命令tnsping测试是否能访问到监听器,如:
M:\>tnsping bkserver
TNS Ping Utility for 32-bit Windows: Version 102010 - Production on 12-8月 -
2010 17:11:04
Copyright (c) 1997, 2005, Oracle All rights reserved
已使用的参数文件:
D:\oracle\product\1020\client_1\network\admin\sqlnetora
已使用 TNSNAMES 适配器来解析别名
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
(HOST = 10713242)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SERVIC
E_NAME = BKSERVER)))
OK (20 毫秒)
注意: 监听器是否能被tnsping通跟数据库的开启/关闭无关,所以就算可以tnsping通监听器但未必能连接到数据库,这时请检查listenerora文件配置信息是否正确,还有数据库是否已经被开启。
在windows下,重启oracle数据库需要先停止,重启,以下是步骤:
1、关闭数据库:win+r,输入如下代码停止:
set ORACLE_SID=SID_Name,回车。
sqlplus /nolog
SQL> connect / as sysdba
SQL> shutdown immediate
SQL> exit
2、启动数据库:win+r,输入如下代码启动:
set ORACLE_SID=你的数据库SID名字
sqlplus /nolog
SQL> connect / as sysdba
SQL> startup
SQL> exit
Oracle Database:
是甲骨文公司的一款关系数据库管理系统。到目前仍在数据库市场上占有主要份额。作为一个通用的数据库系统,它具有完整的数据管理功能;作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。
oracle数据库特点:
数据的大量性、数据的保存的持久性、数据的共享性、数据的可靠性。
以上就是关于如何在linux下重启oracle数据库全部的内容,包括:如何在linux下重启oracle数据库、oracle 监听重启后 LSNRCTL> stat 监听状态查看 为、服务器重启后oracle监听不能自动启动(但服务已设置自动),手动启动后马上停止等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)