使用客户端访问CentOS服务器中Oracle数据库的注意事项

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/my_xxh/article/details/80725933

0X01 设置CentOS服务器的IP地址

1. 进入指定目录: cd /etc/sysconfig/network-scripts/
2. 编辑文件ifcfg-eth0: vi ifcfg-eth0

编辑IP地址,并在首行添加:HWADDR=00:0c:29:ed:62:1e
服务器虚拟机迁移后需要修改配置文件中的原有的MAC地址,执行ip addr命令获取新主机的MAC地址

3. 重启系统后,执行重启网络命令:service network restart


0X02 配置客户端环境

1. 安装Navicat Premium
#连接Oracle时提示“oracle library is not loaded”,解决方法如下:
2. 下载 Instant Client for Microsoft Windows(x64),需要注册账户才能下载,解压后即可使用。

注意:“Instant Client”位数与Navicat Premium的位数相同,参看[1]

3. 配置Navicat Premium
这里写图片描述
也可直接使用数据库管理软件DataStudio


0X03 修改服务器端的配置文件

1. Oracle安装目录下查找listener.ora和tnsnames.ora文件

如:find / -name tnsnames.ora 确定文件位置

(1) 编辑文件tnsnames.ora,修改HOST的值(IP信息,与0X01的IP值一致)
(2) 编辑文件listener.ora,添加如下内容:

SID_LIST_LISTENER =  
(SID_LIST =  
  (SID_DESC =  
  (GLOBAL_DBNAME = orcl)
  (SID_NAME = orcl)
  )
)

这里写图片描述

解决了系统错误:客户端 提示“ORA-12514:TNS:listener does not currently know of service requested in connect descriptor”和服务器端提示 “The listener supports no services”


0X04 Oracle启动/关闭监听

 #打开终端
 #切换帐户
 # su - oracle
 #启动监听
 $ lsnrctl start  #解决“ORA-12541:TNS:no listener” 问题
 #启动后,Navicat Premium即可连接Oracle数据库
 #关闭监听
 $ lsnrctl stop

0X05 服务器异常关机经常会导致下面的错误

“ORA-27101: shared memory realm does not exist”,解决方法如下:

# su - oracle  切换帐户
[oracle@database ~]$ set oracle_sid=orcl  
[oracle@database ~]$ sqlplus /nolog  

SQL*Plus: Release 11.2.0.1.0 Production on Wed Dec 20 08:59:20 2017  

Copyright (c) 1982, 2009, Oracle.  All rights reserved.  

SQL> conn sys/sys as sysdba  
Connected to an idle instance.  
SQL> shutdown abort  
ORACLE instance shut down.  
SQL> startup  
ORACLE instance started.  
SQL> show parameter name;

[1] Centos如何设置IP地址,LINUX怎么修改IP地址
[2] CentOS7 Failed to start LSB: Bring up/down networking. 已解决!!!
[3] Navicat Premium 12连接Oracle时提示oracle library is not loaded的问题解决
[4] Linux下oracle启动/关闭监听(bash:lsnrctl:command not found)
[5] ORA-01034: ORACLE not available

猜你喜欢

转载自blog.csdn.net/my_xxh/article/details/80725933