Centos7下安装sqlplus并连接远程数据库

    已经不用Oracle好多年了,然而近期有项目居然需要用到Oracle,并且是在内网的,所以没办法直接安装数据库连接工具来测试连接,只能在Linux的服务器上面安装sqlplus工具来连接,找资料完成了安装和连接,遂记录。

1.下载oracle sqlplus,选择下载 .rpm文件(以11.2.0.4.0为例)

Instant Client for Linux x86-64 (64-bit)

下载如下两个文件

oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm

oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm

2.将下载的rpm文件上传到服务器

3.安装rpm文件

rpm -ivh oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm

rpm -ivh oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm

成功安装rpm包后,oracle客户端的默认路径为: /usr/lib/oracle/11.2/client64

4. 编辑sqlplus配置文件

编辑配置文件ld.so.conf

vim /etc/ld.so.conf

#在文件尾部添加--根据自己实际情况
/usr/lib/oracle/12.2/client64/lib

5. 配置oracle环境变量

编辑配置文件.bashrc, .bashrc文件在 ~ 路径下,在文件末尾加上:

#sqlplus remote configure
export ORACLE_HOME=/usr/lib/oracle/11.2/client64
export TNS_ADMIN=$ORACLE_HOME
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/loacl/lib:$LD_LIBRARY_PATH
export PATH=$PATH:$ORACLE_HOME/bin

保存,使生效:  source .bashrc

6.连接数据库

  • 命令:sqlplus 用户名/密码@ip地址[:端口]/service_name [as sysdba]
  • 示例:sqlplus sys/pwd@ip:1521/test as sysdba

参考文档:

### Navicat 远程连接 CentOS 7Oracle 数据库的配置教程 为了实现通过 Navicat 远程连接安装CentOS 7Oracle 数据库,需要完成以下几个方面的设置: #### 1. 绑定主机名和 IP 映射 确保目标服务器上已经正确设置了主机名与 IP 地址之间的映射关系。这一步非常重要,因为如果未绑定或者错误绑定可能会导致网络通信失败。具体操作是在 `/etc/hosts` 文件中添加如下内容: ```bash xxx.xxx.xxx.xxx oracle ``` 其中 `xxx.xxx.xxx.xxx` 是实际使用的 IP 地址[^1]。 #### 2. 配置 Linux 系统的语言环境 为了避免因语言编码不一致而引发的各种异常情况,在执行任何其他步骤之前建议先调整系统的默认显示语言为英语。可以通过修改 `.bashrc` 或者全局 locale 设置来达成此目的。命令如下所示: ```bash export LANG=en_US.UTF-8 source ~/.bashrc ``` #### 3. 创建监听器 (Listener) Oracle 数据库依赖于 TNS Listener 来接收来自外部程序的数据请求。因此需确认 listener 是否正常启动以及其参数文件的内容是否合理。 编辑 `$ORACLE_HOME/network/admin/listener.ora` 加入类似下面的一段描述: ```plaintext LISTENER = (DESCRIPTION_LIST= (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=your_server_ip_or_hostname)(PORT=1521)) ) ) SID_LIST_LISTENER = (SID_LIST= (SID_DESC= (GLOBAL_DBNAME=orclpdb1) (ORACLE_HOME=/u01/app/oracle/product/19c/dbhome_1) (SID_NAME=orcl) ) ) ``` 重启服务使更改生效: ```bash lsnrctl stop && lsnrctl start ``` #### 4. 修改 tnsnames.ora 参数文件 同样位于 `$ORACLE_HOME/network/admin/tnsnames.ora` 中定义好客户端访问的目标实例名称及其对应的物理位置信息。 例如: ```plaintext ORCLDB = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = your_server_ip_or_hostname)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orclpdb1.localdomain) ) ) ``` #### 5. 开启防火墙端口允许规则 由于大多数情况下,默认的安全策略会阻止未经许可的入站流量进入特定的服务端口中(比如这里提到的标准 ORACLE DB 使用的是 1521),所以还需要打开相应的端口号以便让远程机器能够顺利抵达目的地。 运行以下指令即可开放所需范围内的所有数据传输通道: ```bash firewall-cmd --zone=public --add-port=1521/tcp --permanent firewall-cmd --reload ``` #### 6. 测试本地连通性 最后可以利用 sqlplus 工具来进行初步验证工作是否一切就绪。 尝试登录至刚刚创建好的数据库账户下看看能否成功建立关联链路吧! ```bash sqlplus username/password@(description=(address=(protocol=tcp)(host=localhost)(port=1521))(connect_data=(service_name=orclpdb1))) ``` #### 7. 在 Navicat 中新建连接 当以上准备工作全部完成后就可以回到最初的起点——Navicat 软件界面上来了。按照提示依次填写必要的字段项之后保存下来便大功告成了! --- ### 注意事项 除了上述流程外还需特别留意几个容易忽略的小细节: - **字符集匹配**:保证源端和服务端采用相同的字符集标准以防乱码现象发生; - **权限分配**:给予适当的操作员足够的控制权限从而不影响日常业务运作; ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值