sqlplus是Oracle数据库的命令行工具,需先安装Oracle Instant Client才能使用。
/opt/oracle/instantclient),合并基础包与SQL*Plus包的内容:mkdir -p /opt/oracle/instantclient
unzip instantclient-basic-linux.x64-XX.X.X.X.X.zip -d /opt/oracle/instantclient
unzip instantclient-sqlplus-linux.x64-XX.X.X.X.X.zip -d /opt/oracle/instantclient
~/.bashrc(用户级)或/etc/profile.d/oracle.sh(系统级)文件,添加以下内容:export ORACLE_HOME=/opt/oracle/instantclient
export LD_LIBRARY_PATH=$ORACLE_HOME:$LD_LIBRARY_PATH
export PATH=$ORACLE_HOME:$PATH
运行source ~/.bashrc(或对应文件)使配置生效。在终端输入sqlplus,若看到类似以下提示符,说明安装成功:
SQL>
sqlplus支持多种连接方式,常用格式如下:
sqlplus / as sysdba
sqlplus username/password@//hostname:port/service_name
示例(连接本地1521端口的ORCL服务):sqlplus scott/tiger@//localhost:1521/ORCL
sqlplus username/password@service_name
示例:sqlplus scott/tiger@ORCL
连接成功后,可执行以下常见SQL命令(SQL语句需以分号;结尾):
SELECT USER FROM DUAL;
SELECT * FROM V$VERSION;
CREATE TABLE employees (
employee_id NUMBER PRIMARY KEY,
first_name VARCHAR2(50),
last_name VARCHAR2(50),
email VARCHAR2(100)
);
INSERT INTO employees (employee_id, first_name, last_name, email)
VALUES (1, 'John', 'Doe', 'john.doe@example.com');
SELECT * FROM employees;
UPDATE employees SET email = 'john.newemail@example.com' WHERE employee_id = 1;
DELETE FROM employees WHERE employee_id = 1;
DROP TABLE employees;
除SQL语句外,sqlplus还提供以下实用命令(无需分号结尾):
SHOW USER;
DESC[RIBE] table_name;
示例:DESC employees;
SET LINESIZE 120;
SET PAGESIZE 20;
SPOOL file.txt;
-- 执行SQL语句(如SELECT * FROM employees;)
SPOOL OFF;
EXIT;
或QUIT;
libaio库,可通过以下命令安装:sudo apt-get install libaio1
sqlplus命令无效,需检查环境变量PATH是否包含$ORACLE_HOME(如/opt/oracle/instantclient)。以上内容覆盖了Debian系统中sqlplus的安装、连接、基本操作及常见问题解决,满足日常数据库管理需求。