Oracl数据库管理方面的资料(查询sga,查看oracle数据库名称sid,查看oracle数据库名称,查看表空间,修改表空间名称,数据库管理,sqlPlus数据显示)
顯示Oracle sga相關(guān)信息:
SQL> show sga
Total System Global Area 105978600 bytes
Fixed Size 453352 bytes
Variable Size 50331648 bytes
Database Buffers 54525952 bytes
Redo Buffers 667648 bytes
SQL>
Fixed Size:
oracle 的不同平臺和不同版本下可能不一樣,但對于確定環(huán)境是一個固定的值,里面存儲了SGA 各部分組件的信息,可以看作引導(dǎo)建立SGA的區(qū)域。
Variable Size:
包含了shared_pool_size、java_pool_size、large_pool_size 等內(nèi)存設(shè)置
Database Buffers:
指數(shù)據(jù)緩沖區(qū),在8i 中包含db_block_buffer*db_block_size、buffer_pool_keep、buffer_pool_recycle 三部分內(nèi)存。在9i 中包含db_cache_size、db_keep_cache_size、db_recycle_cache_size、 db_nk_cache_size。
Redo Buffers:
指日志緩沖區(qū),log_buffer。在這里要額外說明一點的是,對于v$parameter、v$sgastat、v$sga查詢值可能不一樣。v$parameter 里面的值,是指用戶在初始化參數(shù)文件里面設(shè)置的值,v$sgastat是oracle 實際分配的日志緩沖區(qū)大小(因為緩沖區(qū)的分配值實際上是離散的,也不是以block 為最小單位進行分配的),v$sga 里面查詢的值,是在oracle 分配了日志緩沖區(qū)后,為了保護日志緩沖區(qū),設(shè)置了一些保護頁,通常我們會發(fā)現(xiàn)保護頁大小是8k(不同環(huán)境可能不一樣) .
=========================================================
1: 設(shè)置參數(shù)
SQL> show parameters log_buffer
NAME TYPE VALUE
------------------------------------ ------- ------------------------------
log_buffer integer 524288
2:日志內(nèi)存大小
SQL> select * from v$sgastat where name like '%log%';
POOL NAME BYTES
----------- -------------------------- ----------
log_buffer 656384
3:為了保護日志內(nèi)存,而增加了輔助的內(nèi)存,也就是保護頁
-------------------------------------------------
對于數(shù)據(jù)庫來說,在不同 的平臺下
log_buffer 是離散的 一組值,假設(shè)是集合 R,并且不是按照 os blockck 或者 db block 為步長增加的,(比如可能是 65k,128k,512k ,641k....這樣的值) 當(dāng)設(shè)置參數(shù)為某個值的時候,數(shù)據(jù)庫選擇的實際大小是 大于等于 該值 的 min(R) ,根據(jù)這組值,比如你設(shè)置了 log_buffer = 600k ,則實際選擇的是641 k
然后,在實際分配內(nèi)存的時候,為了 給 log buffer 做一些保護,還另外分配了一小部分空間,通常是 11 k 大小。
則有641+11 = 652 k
這才是 最后真正的 內(nèi)存大小 ,也就是 show SGA 時候顯示大小。
怎樣查看Oracle的數(shù)據(jù)庫名稱sid
用sysdba身份登錄 比如sqlplus sys/123456 as sysdba;
執(zhí)行 select name from V$database; 或是執(zhí)行select * from V$database;
不過執(zhí)行第二個顯示的內(nèi)容太多了不好找自己想要的結(jié)果
你也可以先用desc V$database;語句查看一下V$database都有什么字段然后選擇自己想要的字段進行選擇
查看實例名稱(sid):
select instance_name from V$instance;
一般默認(rèn)情況下sid與你的數(shù)據(jù)庫的名稱是一樣的!
查看用戶和默認(rèn)表空間的關(guān)系:???
select username,default_tablespace from user_users;
修改表空間的名稱(這時候要以DBA方式登錄sqlplus sys/oracle as SYSDBA;)
alter tablespace TABLESPACENAME RENAME To misps;
增加數(shù)據(jù)文件或者增大數(shù)據(jù)文件尺寸都可以擴展表空間
例如修改數(shù)據(jù)文件尺寸:
alter database datafile '數(shù)據(jù)文件的路徑和名稱' resize 300m;
?
--------------------------------------------------------------
sqlplus數(shù)據(jù)顯示
| 顯示當(dāng)前的顯示條數(shù)(默認(rèn)是14): |
| 2 | show pagesize; |
| 3 | 設(shè)置顯示條數(shù)為100跳: |
| 4 | set pagesize 100; |
| 5 | 顯示當(dāng)前的顯示列數(shù): |
| 6 | show linesize; |
| 7 | 設(shè)置顯示列數(shù)為100: |
| 8 | set linesize 100; |
--------------------------------------------------------------
?數(shù)據(jù)庫管理:
?1.查看當(dāng)前用戶的表:
select table_name from user_tables;
2.查看表結(jié)構(gòu):desc表名?
3.查看所有用戶的表名:
select??? table_name??? from?? all_tables;????
4.查看所有表名(其中包括系統(tǒng)表)
select?? table_name??? from?? all_tables;?????
5.查看所有的表:
select? *? from? tab/dba_tables/dba_objects/cat;?
下面介紹Oracle查詢用戶表空間
?◆Oracle查詢用戶表空間:select * from user_all_tables
?◆Oracle查詢所有函數(shù)和儲存過程:select * from user_source
?◆Oracle查詢所有用戶:select * from all_users;? select * from dba_users
?◆Oracle查看當(dāng)前用戶連接:select * from v$Session
?◆Oracle查看當(dāng)前用戶權(quán)限:select * from session_privs
◆Oracle查看用戶表空間使用情況: select a.file_id "FileNo",a.tablespace_name???? "Tablespace_name",??? a.bytes "Bytes",a.bytes-sum(nvl(b.bytes,0)) "Used",??? sum(nvl(b.bytes,0)) "Free",??? sum(nvl(b.bytes,0))/a.bytes*100 "%free"??? from dba_data_files a, dba_free_space b??? where? a.file_id? = b? .file_id(+)??? group by a.tablespace_name ,??? a.file_id,a.bytes order by a.tablespace_name;??
1.查看所有用戶:?? select * from dba_user;?? select * from all_users;?? select * from user_users;
2.查看用戶系統(tǒng)權(quán)限:?? select * from dba_sys_privs;?? select * from all_sys_privs;?? select * from user_sys_privs;
3.查看用戶對象權(quán)限:?? select * from dba_tab_privs;?? select * from all_tab_privs;?? select * from user_tab_privs;
4.查看所有角色:?? select * from dba_roles;
5.查看用戶所擁有的角色:?? select * from dba_role_privs;?? select * from user_role_privs;??
6.查看角色所擁有的權(quán)限:???? select * from role_sys_privs;???? select * from role_tab_privs;??
7.查看所有系統(tǒng)權(quán)限???? select * from system_privilege_map;???
8.查看所有對象權(quán)限???? select * from table_privilege_map;?? 以上是在Oracle中查看用戶權(quán)限 , 在DB2中為:?? select * from syscat.dbauth?? 或者?? get authorizations? 查看sid select * from v$instance
總結(jié)
以上是生活随笔為你收集整理的Oracl数据库管理方面的资料(查询sga,查看oracle数据库名称sid,查看oracle数据库名称,查看表空间,修改表空间名称,数据库管理,sqlPlus数据显示)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 章鱼小丸子做好变冷了,就缩小了,这个问题
- 下一篇: 星巴克一杯咖啡多少钱 详解星巴克咖啡价格