在 Linux 上连接 Oracle 数据库,常见场景有几种,下面按最常用方式给你说明,并附上示例。
sqlplus 连接export ORACLE_HOME=/u01/app/oracle/product/19.3.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$PATH
(可写入 ~/.bash_profile)
sqlplus / as sysdba
仅限本机,且用户属于
dba组
sqlplus username/password
sqlplus username/password@//localhost:1521/orclpdb
lsnrctl status
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.10)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = orclpdb)
)
)
sqlplus username/password@ORCL
export LD_LIBRARY_PATH=/opt/oracle/instantclient
export PATH=$LD_LIBRARY_PATH:$PATH
sqlplus username/password@//192.168.1.10:1521/orclpdb
firewall-cmd --add-port=1521/tcp --permanent
firewall-cmd --reload
lsnrctl start
SELECT username, account_status FROM dba_users;
jdbc:oracle:thin:@//host:1521/service_name
import oracledb
conn = oracledb.connect(
user="scott",
password="tiger",
host="localhost",
port=1521,
service_name="orclpdb"
)
| 场景 | 推荐方式 |
|---|---|
| Linux 本机 + Oracle 已装 | sqlplus / as sysdba |
| 本机 + 远程库 | sqlplus user/pass@//ip:1521/service |
| 只安装客户端 | Instant Client + sqlplus |
| 程序连接 | JDBC / Python / ODBC |
如果你愿意,可以告诉我:
我可以给你精确到命令级别的操作步骤。