Oracle - 啟動、關閉、檢視例項、使用者解鎖、連線數量、資料庫資訊、命令列顯示設定

襲冷發表於2018-01-15

一、啟動相關

    1、通過sqlplus啟動和關閉

[oracle@xilen ~]$ su - oracle                     -- 切換到oracle使用者
[oracle@xilen ~]$ lsnrctl start                   -- 開啟監聽
[oracle@xilen ~]$ sqlplus /nolog                  -- 進入到sqlplus
SQL> conn /as sysdba                              -- 連線到sysdba
SQL> startup                                      -- 啟動資料庫例項
----------------------------------------------------------------------------
SQL> shutdown immediate                           -- 關閉資料庫例項
[oracle@xilen ~]$ lsnrctl stop                    -- 關閉監聽
    2、通過dbstart和dbshut啟動和關閉
[oracle@xilen ~]$ lsnrctl start                    -- 先啟動監聽 
[oracle@xilen ~]$ dbstart                          -- 啟動例項   
----------------------------------------------------------------------------
[oracle@xilen ~]$ dbshut                           -- 關閉資料庫例項
[oracle@xilen ~]$ lsnrctl stop                     -- 關閉監聽

    3、使資料庫例項和linux系統一起啟動

-- 在/etc/rc.d/rc.local中加入如下語句即可實現
su - oracle -c "lsnrctl start" 
su - oracle -c "dbstart"


二、例項相關

    1、Linux下檢視和指定例項名(ORACLE_SID)

[oracle@xilen ~]$ echo $ORACLE_SID                -- 檢視當前SID
[oracle@xilen ~]$ export ORACLE_SID=orcl          -- 指定例項名
    2、sqlplus下檢視例項名和服務名
select instance_name from v$instance;                          -- 檢視例項名
show parameter instance                                        -- 檢視例項名

select value from v$parameter where name = 'service_name';     -- 檢視服務名
show parameter service_name                                    -- 檢視服務名

三、使用者解鎖(ORA-28000:the account is locked)
[oracle@xilen ~]$ sqlplus /nolog	     -- 進入到sqlplus (如存在多個例項,先確認當前例項是否正確)
SQL> conn / as sysdba;                       -- dba登陸
SQL> alter user scott account unlock;        -- 解鎖
SQL> commit;                                 -- 確認


四、連線數量

SELECT NAME, VALUE FROM V$PARAMETER WHERE NAME = 'PROCESSES';  -- 查詢資料庫允許的最大連線數
ALTER SYSTEM SET PROCESSES = 300 SCOPE = SPFILE;               -- 修改資料庫允許的最大連線數
SELECT SESSIONS_HIGHWATER FROM V$LICENSE;                      -- 檢視曾經最大的會話數
SELECT COUNT(*) FROM V$SESSION;                                -- 查詢ORACLE的連線數
SELECT COUNT(*) FROM V$SESSION WHERE STATUS='ACTIVE';          -- 查詢ORACLE的併發連線數


五、資料庫資訊

SELECT * FROM product_component_version;    -- 檢視資料庫的版本
select * from sys.v_$version;               -- 檢視資料庫的版本

SELECT NAME FROM v$controlfile;             -- 檢視控制檔案目錄 
SELECT MEMBER FROM v$logfile;               -- 檢視日誌檔案目錄

select * from nls_database_parameters;      -- 檢視資料庫字符集


五、命令列顯示設定
set serveroutput on;                         -- 顯示伺服器輸出資訊
show linesize;                               -- 檢視行的顯示大小
set linesize 120;                            -- 修改行的顯示大小
col column_name format a60;                  -- 限制單列的顯示長度




相關文章