在CentOS系统上使用SQL*Plus需要先安装Oracle客户端,然后配置环境变量,最后通过命令行登录到数据库。以下是详细步骤:
下载Oracle Instant Client: 从Oracle官方网站下载适用于Linux的Oracle Instant Client。例如,下载基本包和SQL*Plus包:
wget https://download.oracle.com/otn_software/linux/instantclient/216000/oracle-instantclient-basic-21.6.0.0.0-1.x86_64.rpm
wget https://download.oracle.com/otn_software/linux/instantclient/216000/oracle-instantclient-sqlplus-21.6.0.0.0-1.x86_64.rpm
安装Oracle Instant Client:
使用yum
进行本地安装:
sudo yum localinstall oracle-instantclient-basic-21.6.0.0.0-1.x86_64.rpm oracle-instantclient-sqlplus-21.6.0.0.0-1.x86_64.rpm
编辑~/.bashrc
文件:
nano ~/.bashrc
添加以下内容:
export ORACLE_HOME=/usr/lib/oracle/21/client64
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export PATH=$PATH:$ORACLE_HOME/bin
使环境变量生效:
source ~/.bashrc
打开终端:
在CentOS中,可以使用快捷键Ctrl+Alt+T
或者从应用程序菜单中选择终端。
登录到SQL*Plus: 使用以下命令格式连接到数据库:
sqlplus username/password@hostname:port/servicename
例如:
sqlplus myuser/mypassword@orcl:1521/orcl
成功连接后,您将看到SQL*Plus提示符,如下所示:
SQL*Plus: Release 21.0.0.0.0 - Production on Mon Jun 27 16:20:48 2022
Copyright (c) 1982, 2022, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
with the Partitioning, OLAP, Data Mining and Real Application Testing options
执行SQL命令: 在SQL*Plus提示符下,输入SQL命令并按回车键执行。例如,查询表的所有数据:
SELECT * FROM table_name;
退出SQL*Plus: 使用以下命令退出SQL*Plus:
exit
或者直接关闭命令行窗口。
上下文切换:
使用rlwrap
和readline
配合使用,可以方便地上下文切换和查看历史命令:
sudo yum install rlwrap
echo "alias sqlplus='rlwrap sqlplus'" >> ~/.bashrc
source ~/.bashrc
美化输出格式:
可以使用glogin.sql
脚本来美化输出格式。下载并配置该脚本:
wget https://raw.githubusercontent.com/oracle/Oracle-SQLPlus-Tools/master/glogin.sql
sqlplus /nolog @glogin.sql
通过以上步骤,您可以在CentOS系统上成功安装并使用SQL*Plus工具,从而高效地管理Oracle数据库。