linux下開啓oracle服務和監聽、登錄相關操作

1、sqlplus登錄

查看sqlplus幫助

sqlplus --help

登陸默認的Oracle實例(本機實例)
  第一步:

sqlplus

  第二步,輸入用戶名和密碼:

[oracle@vbox88 ~]$ sqlplus
SQL*Plus: Release 11.2.0.3.0 Production on 星期一 10月 28 17:41:27 2019
Copyright (c) 1982, 2011, Oracle.  All rights reserved.
請輸入用戶名:  sys as sysdba
輸入口令:
連接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
17:41:38 SYS@vbox88in*SQL>
  • 登陸遠程oracle實例

登陸格式:sqlplus 用戶名/密碼@host:端口號/服務命
注意:這裏是服務名稱,而非服務id

  • 登陸普通用戶:
sqlplus scott/scott@192.168.100.88:1521/vbox88db
  • 登陸管理員用戶:
sqlplus sys/oracle@192.168.100.88:1521/vbox88db as sysdba

  在登陸管理員用戶時需要注意,可能會出現ora 01017 登陸拒絕的問題,原因是remote_login_passwordfile參數沒有設置爲none或者sys密碼文件過期,解決方案可以參考:
http://blog.itpub.net/29802484/viewspace-1256928/
比如在我自己的服務器上,remote_login_passwordfile已經設置成了exclusive(需在sqlplus執行):

18:45:40 SYS@192.168.100.88:1521/vbox88db*SQL>show parameter remote_login_passwordfile

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
remote_login_passwordfile            string      EXCLUSIVE
18:45:58 SYS@192.168.100.88:1521/vbox88db*SQL>

使用orapwd命令直接重建過期的sys密碼文件即可(需跳出sqlplus執行):

[oracle@vbox88 ~]$ orapwd file=/u01/app/oracle/product/11.2.0/db_1/dbs/orapwvbox88in password=oracle entries=3 force=y
  • sqlplus中切換登陸oracle實例

登陸sqlplus後,可以使用conn命令遠程登陸其它用戶或者oracle實例。

18:51:20 SYS@192.168.100.88:1521/vbox88db*SQL>conn scott/scott@192.168.5.103:1521/vbox88db
已連接。
18:52:02 SCOTT@192.168.5.103:1521/vbox88db*SQL>

2、oracle實例/監聽的開啓和關閉

  • 關閉oracle實例
18:55:33 SYS@192.168.100.88:1521/vbox88db*SQL>shutdown
數據庫已經關閉。
已經卸載數據庫。
ORACLE 例程已經關閉。
  • 開啓oracle實例
18:58:12 SYS@vbox88in*SQL>startup
ORACLE 例程已經啓動。
Total System Global Area  626327552 bytes
Fixed Size                  2230952 bytes
Variable Size             486540632 bytes
Database Buffers          134217728 bytes
Redo Buffers                3338240 bytes
數據庫裝載完畢。
數據庫已經打開。
18:58:25 SYS@vbox88in*SQL>
  • 當前監聽程序查看/關閉/開啓
lsnrctl status
lsnrctl stop
lsnrctl start

3、oracle相關的環境變量和目錄

  • oracle安裝目錄
[oracle@vbox88 ~]$ echo $ORACLE_HOME
/u01/app/oracle/product/11.2.0/db_1
  • 監聽文件的位置
 /u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora
  • tns文件的位置
 /u01/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
  • 查看當前oracle的sname/sid

用sysdba身份登陸sqlplus
(1) 查看當前sname/sid,若配置了tns顯示的是sname,否則顯示sid

19:20:27 SYS@vbox88in*SQL>select name from  V$database;

(2)查看當前的sid(即oracle實例)

19:20:35 SYS@vbox88in*SQL>select instance_name from  V$instance;

INSTANCE_NAME
----------------
vbox88in

(3)通過ora文件名判斷sid

/u01/app/oracle/product/11.2.0/db_1/dbs/SPFILESID名稱.ORA

(4)通過linux命令查看sid,最後一個下劃線後面的單詞就是sid

[oracle@vbox88 dbs]$ ps -ef|grep ora_
oracle   24692     1  0 18:58 ?        00:00:00 ora_pmon_vbox88in
oracle   24694     1  0 18:58 ?        00:00:00 ora_psp0_vbox88in
oracle   24696     1  1 18:58 ?        00:00:21 ora_vktm_vbox88in
oracle   24700     1  0 18:58 ?        00:00:00 ora_gen0_vbox88in
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章