Oracle使用SQL*Plus連接配接資料庫
by:授客 QQ:1033553122
使用sqlplus連接配接資料庫
A 方式1
1.開啟SQL*Plus,但不連接配接到資料庫
$ sqlplus /NOLOG
2.連接配接到資料庫
CONN[ECT] [logon] [AS {SYSOPER | SYSDBA}]
其中logon為
{username[/passwd] | /}[@connect_identifier] [edition={edition_name | DATABASE_DEFAULT}]
說明:
/:用于連接配接請求的外部認證,這種驗證類型不需要資料庫密碼。最常見的外部認證形式為作業系統認證。資料庫使用者由已登入主機作業系統的主機帳号驗證并授權
AS {SYSOPER | SYSDBA}:使用者以SYSOPER、SYSDBA系統權限連接配接.僅某些預定義的管理者使用者或添加到密碼檔案的使用者可以如此方式連接配接
username:合法資料庫使用者名。
passwd:合法資料庫使用者密碼,如果不指定,且不是以
AS
SYSDAB方式登入時,會彈出密碼輸入提示
connect_identifier:Oracle網絡連接配接标示符,用于遠端連接配接。如果忽略,sqlplus連接配接到本地執行個體。常用連接配接标示符為網絡服務名(net
service name).網絡服務名為Oracle網絡連接配接描述符的别名(網絡位址和資料庫服務名)。通常通過解析本地主機上的tnsnames.ora檔案得到網絡服務名。
connect_identifier的簡易文法:
"host:[port][/service_name][:server][/instance_name]"
注:指定/service_name選項,可不在(本地)電腦用戶端上配置Oracle網絡服務
host:遠端資料庫主機IP或主機名
port:Oracle網絡監聽器監聽的端口
service_name:要連接配接的資料庫服務名。如果遠端資料庫網絡服務監聽器配置了預設的服務名,可以忽略,否則必須提供。通常每個資料庫提供了一個和全局資料庫名相同的服務名。全局資料庫名由DB_NAME和DB_DOMAIN初始參數組成:DB_NAME.DB_DOMAIN,如果DB_NAME為orcl,DB_DOMAIN為us.example.com,那麼标準服務名為orcl.us.example.com
server:服務處理器類型,可接受值含dedicated(專用伺服器)、shared(共享伺服器)、pooled(共享池)
instance_name:指定要連接配接的執行個體。
edition={edition_name |
DATABASE_DEFAULT}:指定啟動資料庫會話時版本。如果指定版本,則該版本必須存在且擁有對它的USE權限,不指定則使用預設版本。
注:這個比較少用
B
方式2
将方式1中的兩步合并為一步
sqlplus [logon] [AS
{SYSOPER | SYSDBA}]
例1:以SYSTEM使用者身份連接配接
SQL> conn
system
Enter password:
ERROR:
ORA-01034: ORACLE not
available
ORA-27101: shared memory
realm does not exist
Linux Error: 2: No such
file or directory
Process ID: 0
Session ID: 0 Serial
number: 0
輸出說明:因為此時資料庫沒開啟,是以報錯
例2:以具有SYSDBA權限的SYS使用者身份連接配接到一個本地資料庫
SQL>CONNECTSYS AS
SYSDBA
Connected to an idle
instance.
說明:以SYS使用者身份連接配接,必須指定AS
例3:使用作業系統認證,以SYSDBA特權進行本地連接配接
SQL>CONNECT / AS
instance
----------------遠端連接配接(未在本地用戶端上配置SERVICE_NAME)------------------
例4:以testacc使用者身份,并指定使用者密碼(abc123),監聽端口号,遠端連接配接到運作于主機172.25.75.14上,資料庫服務名為oracl11g的資料庫
SQL> CONNECT
testacc/abc123@"172.25.75.14:1521/orcl11g"
Connected.
注意:
1.如果未在本地用戶端上配置tnsname.ora檔案,則必須指定服務名,否則會報錯誤,如下:
ORA-12504:
TNS:listener was not given the SERVICE_NAME in
CONNECT_DATA
2.如果未在本地用戶端上配置tnsname.ora檔案,如果涉及遠端連接配接,則必須指定服務名
例5:不指定使用者密碼外
testacc@"172.25.75.14:1521/orcl11g"
例6:指定執行個體名
testacc/abc123@"172.25.75.14:1521/orcl11g/orcl11g"
注:這裡有兩個oracl11g,從左到右,第一個是服務名SERVICE_NAME,第二個是執行個體名,以下例子也一樣
例7:指定伺服器類型
testacc/abc123@"172.25.75.14:1521/orcl11g:server/orcl11g"
例8:不指定端口号
testacc/abc123@"172.25.75.14/orcl11g"
例9:不指定執行個體名,指定伺服器類型
testacc/abc123@"172.25.75.14:1521/orcl11g:server"
例10:以sqlplus一步到位方式連接配接
d:\>sqlplus
SQL*Plus: Release
11.2.0.1.0 Production on Tue Nov 18 10:18:51 2014
Copyright (c) 1982, 2010,
Oracle. All
rights reserved.
Connected to:
Oracle Database 11g
Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning,
OLAP, Data Mining and Real Application Testing options
-----------------------end----------------------
參考連結:
http://docs.oracle.com/cd/E11882_01/server.112/e25494/start.htm#ADMIN004
作者:授客
QQ:1033553122
全國軟體測試QQ交流群:7156436
Git位址:https://gitee.com/ishouke
友情提示:限于時間倉促,文中可能存在錯誤,歡迎指正、評論!
作者五行缺錢,如果覺得文章對您有幫助,請掃描下邊的二維碼打賞作者,金額随意,您的支援将是我繼續創作的源動力,打賞後如有任何疑問,請聯系我!!!
微信打賞
支付寶打賞 全國軟體測試交流QQ群