oracle相關知識點
oracle數據庫,實例名和數據庫是一一對應的,oracle服務端可以啟動多個實例,對應於多個數據庫。
數據庫可以通過sqlplus / as sysdba 進入默認SID的實例,
查看當前的實例名:select * from v$instance;
切換進入其他實例,只需要export ORACLE_SID= sidname(實例名),再sqlplus / as sysdba 進入即可。
數據庫已經存在的情況下,才存在用戶和用戶可以訪問的表空間,即數據存儲的表結構文件。
一,oracle TNS listener相關:
查看監聽器狀態:
lsnrctl status
啟動:
lsnrctl start
關閉:
lsnrctl stop
修改監聽文件的端口,用於網絡客戶端鏈接:
vi /u01/app/oracle/product/11.2.0/network/admin/listener.ora
修改內容(HOST = 10.116.4.63)(PORT = 1521)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.116.4.63)(PORT = 1521))
# (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
ADR_BASE_LISTENER = /u01/app/oracle
修改listener的SID映射文件:
vi /u01/app/oracle/product/11.2.0/network/admin/tnsnames.ora
添加SID是jjccbdb的實例名:
jjccbdb =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.116.4.63)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = jjccbdb)
)
)
二,oracle 創建/刪除實例庫的步驟
1、使用dbca工具靜默建庫
dbca -silent -createdatabase -templatename testdb -sid $dbname -gdbname $dbname -datafileDestination $dest -syspassword oracle -systempassword oracle \
-characterset $langu -redoLogFileSize 512 -storageType FS -emConfiguration NONE -memoryPercentage 30 -totalMemory $mem -automaticMemoryManagement true
2、使用dbca工具刪庫
現有實例名:SRPSDB
dbca -silent -deleteDatabase -sourcedb SRPSDB -sid SRPSDB -sysDBAUserName sys -sysDBAPassword oracle
3、創建實例之後,設置表空間和用戶訪問權限
Create temporary tablespace srpsdb_tmp tempfile ‘/u01/app/oracle/oradata/SRPSDB/srpsdb_tmp.dbf‘ size 10240m autoextend on next 1024m maxsize 10240m extent management local;
create tablespace srpsdb logging datafile ‘/u01/app/oracle/oradata/SRPSDB/srpsdb.dbf‘ size 10240m autoextend on next 1024m maxsize 10240m extent management local;
Create temporary tablespace srpsdb_tmp tempfile ‘/u01/app/oracle/oradata/jjccbdb/srpsdb_tmp.dbf‘ size 10240m autoextend on next 1024m maxsize 10240m extent management local;
create tablespace srpsdb logging datafile ‘/u01/app/oracle/oradata/jjccbdb/srpsdb.dbf‘ size 10240m autoextend on next 1024m maxsize 10240m extent management local;
4、賦權用戶的訪問表空間
create user C identified by 123456 default tablespace srpsdb temporary tablespace srpsdb_tmp;
create user P identified by 123456 default tablespace srpsdb temporary tablespace srpsdb_tmp;
create user M identified by 123456 default tablespace srpsdb temporary tablespace srpsdb_tmp;
5、給用戶賦予角色
grant DBA to C;
grant DBA to P;
grant DBA to M;
--------------
三,常用的oracle 查看用戶表及權限相關
oracle中用戶權限分為系統權限和用戶表權限:
查看當前用戶表級權限權限:
select * from user_tab_privs;
查看當前用戶擁有的系統權限:
select * from user_sys_privs;
查看當前用戶下的表:
select * from user_tables;
查看某用戶的權限:
select * from dba_sys_privs where grantee=‘M‘;
查看用戶的角色,限定當前查詢用戶是dba的前提下:
select * from dba_role_privs where grantee=‘P‘;
查看當前用戶的表空間:
select username,default_tablespace from user_users;
進dba角色查看:
1、sqlplus / as sysdba
2、 select owner,table_name from dba_tables where table_name=‘ABM_ACCOUNT‘;
四,oracle的jdbc鏈接地址:jdbc:oracle:thin:@10.116.4.125:1521:SRPSDB(實例名)
oracle相關知識點