不是很懂你切換到其他表空間是什么意思。如果你只是想查詢某個表空間上有什么表,可以這樣做:
成都創(chuàng)新互聯(lián)專注于天橋企業(yè)網站建設,響應式網站開發(fā),商城建設。天橋網站建設公司,為天橋等地區(qū)提供建站服務。全流程按需定制開發(fā),專業(yè)設計,全程項目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務
查詢表空間所有表:select table_name from all_tables where TABLESPACE_NAME='表空間' 表空間名字一定要大寫
如果你要查詢 指定表空間上某個表,那就要先找到這個表屬于什么用戶,因為oracle不是根據表在哪個表空間來區(qū)分權限的,而是根據這個表所在用戶區(qū)分權限的。
select owner from dba_tables where table_name='表名'; 表名也要大寫。
假如查到這個表的owner是 aaa,表名是ttt,對于sys用戶直接
select * from aaa.ttt 就可以了
1、將目標用戶賦予dba權限,然后導入:grant dba to xxx;
2、使用有dba權限的用戶來進行導入:imp xxx/xxx file=xx.dmp fromuser=原用戶 touser=目標用戶
3、這個關鍵是導入時的用戶角色問題(主要是因為你導出時使用的用戶為具有dba權限的用戶),這個和你是否具有導入權限沒有關系。
Oracle的學習主要有兩個路線。
一個是Oracle的開發(fā),主要用到Sql語句,一般來說做開發(fā)的都要用到其他的開發(fā)語言,如PB、VB、VC、Java、Delphi、.net等等,這樣來配合使用開發(fā)C/S和B/s架構的程序。
一個是Oracle的管理,也就是人們常說的DBA,英文Database Administrator.
主要是維護數(shù)據庫的工作。只用學會SQL語句和Oracle的結構等就可以了。
DBA需要對Oracle有一個很深的認識,否則難成大器。
然后你看看這個系統(tǒng)學習的方法:
來源:360oracle運維
如何進入JAZN命令環(huán)境 1.進入到目錄$ORACLE_HOME/oc4j/j2ee/isqlplus/application-deployments/isqlplus/ 2.確保JAVA_HOME環(huán)境變量指向了正確的jdk(需要1.4以上)路徑,可以使用oracle自帶的jdk,位于$ORACLE_HOME/jdk 3.執(zhí)行以下命令java -Djava.security.properties=$ORACLE_HOME/sqlplus/admin/iplus/provider -jar $ORACLE_HOME/oc4j/j2ee/home/jazn.jar -user "iSQL*Plus DBA/admin" -password welcome -shell 其中realm=iSQL*Plus DBA,user=admin,這些可以從xml配置文件中看到,admin的默認密碼是welcome,但是admin用戶默認沒有webDba權限,不能直接用于登陸isqlplus. 注意該命令一定要先進入第一步的目錄后再執(zhí)行,否則會報錯oracle.security.jazn.JAZNRuntimeException: Configuration file "configjazn.xml" does not exist. Check your JAAS configuration settings.或者Realm [iSQL*Plus DBA] does not exist in system. 如果報以上的錯誤,請仔細檢查你的當前目錄是否和第一步中給出的目錄完全一致 進入JAZN命令環(huán)境后,可以執(zhí)行所有的任務: 1.新建用戶ning,密碼pass JAZN: adduser "iSQL*Plus DBA" ning pass 2.列出用戶JAZN: listusers iSQL*Plus DBA/admin iSQL*Plus DBA/ning JAZN: listusers "iSQL*Plus DBA" admin ning 3.授予用戶登陸isqlplus DBA的權限JAZN: grantrole webDba "iSQL*Plus DBA" ning 4.撤銷用戶登陸isqlplus DBA的權限JAZN: revokerole webDba "iSQL*Plus DBA" ning 5.刪除用戶JAZN: remuser "iSQL*Plus DBA" ning 6.修改用戶密碼JAZN: setpasswd "iSQL*Plus DBA" ning pass newpass 7.退出JAZN命令環(huán)境JAZN: exit 假設上面我們創(chuàng)建了一個用戶ning,密碼為pass,并且已經授予webDba權限。
如果不想通過sqlplus / as sysdba這樣不輸入密碼就能登錄,可以進行如下設置
1. 創(chuàng)建密碼文件:
orapwd file=c:\orallocal.ora password=maximo entries=10
2. 在oraclehome中的network/admin下有個sqlnet.ora文件
加入或修改如下內容:
sqlnet.authentication_services=none
密碼文件需要重啟數(shù)據庫才能生效
這樣以后即使 as sysdba也需要輸入正確的密碼
(1)不建議以sysdba身份直接jdbc登錄數(shù)據庫,因為這樣容易造成管理混亂。
(2)不建議sysdba用戶和jdbc用戶合用一個用戶,因為不安全。
(3)如果需要查表等操作,個人建議授權,利用數(shù)據庫的最小權限原則,如果每個人都知道sysdba的密碼。那么這個人改一點,那個人改一點,數(shù)據庫一定亂套。