a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 數據庫 > Oracle > 正文

Oracle學習快速入門基礎教程

2024-08-29 13:50:10
字體:
來源:轉載
供稿:網友
   修改密碼方法:1.SQL>; grant connect to USRNAME identified by USRPWD ;2.SQL>; alter user USRNAME identified by USRPWD ;3.SQL>; passWord USRNAME ;更改 USRNMAE 的口令舊口令:××××××新口令:××××××重新鍵入新口令:××××××    修改成Oracle認證方法:    1.修改參數文件中remote_login_passwordfile=EXCLUSIVE 或SHARED 2.修改/home/network/admin/SQLNET.ORA 文件增加 sqlnet.authentication_services=(NFS)    ORACLE_SID是操作系統級的參數INSTANCE_NAME是數據庫級的參數SPFILE 是服務器參數文件PFILE 是文本參數文件create pfile='/oracle/test.ora' from spfile ;show parameter spfile ; 后假如VALUE值是零,則沒有使用spfile.啟動數據庫是可以指定是用pfile還是用spfile啟動 如下:startup pfile='/oracle/test.ora'    show parameter instance show parameter db    alter system set job_queue_PRocesses=50 comment ='temporaty change on' scope = memoryspfileboth ;    alter session set    CONCAT('Good', 'String')   GoodString SUBSTR('String',1,3)       Str LENGTH('String')           6 INSTR('String', 'r')       3 LPAD(sal,10,'*')           ******5000    union union all minus 第一個查詢減去第二個查詢intersect 交集    SQL>; select replace('itpub oracle','oracle','training')  itpub from dual /    ITPUB--------------    itpub training    Translate SQL>; select translate('This is second trianing of itpub in Beijing!','abcde','12345') itpub 2  from dual;    ITPUB--------------------------------------------    This is s53on4 tri1ning of itpu2 in B5ijing!    Floor SQL>; select floor(4.55) from dual;    FLOOR(4.55)-----------    4 Ceil SQL>; select ceil(4.55) from dual;CEIL(4.55)----------    5    ROUND:                4舍5入到指定的小數位ROUND(45.926, 2)                                                45.93 TRUNC:                        將值截斷到指定的小數位TRUNC(45.926, 2)                                                   45.92 MOD:                                返回相除后的余數MOD(1600, 300)                                                           100    select trunc(sysdate, 'D') - 3 from dual;    trunc(sysdate, 'D'), 截取到本周的第一天(0:00)    trunc(sysdate, 'M'), 截取到本月的第一天(0:00)    trunc(sysdate, 'DD'), 截取到本日的0:00 trunc(sysdate,'yyyy')得到今年的第一天的0:00.    十進制與十六進制EYGLE@vilen>; select to_char(2463,'xxxx') from dual;    TO_CH-----    99f    已選擇 1 行。    十六進制與十進制EYGLE@vilen>; select to_number('99f','xxxx') from dual;    TO_NUMBER('99F','XXXX')-----------------------    2463    SQL>; select ename,sal,2  case job WHEN 'MANAGER' THEN 1.1*sal 3           WHEN 'ANALYST' THEN 1.2*SAL 4           WHEN 'CLERK'   THEN 1.5*SAL 5  ELSE sal END "NEW_SAL" 6  from emp;    ENAME             SAL    NEW_SAL---------- ---------- ----------    SMITH             800       1200 ALLEN            1600       1600 WARD             1250       1250 JONES            2975     3272.5 MARTIN           1250       1250 BLAKE            2850       3135 CLARK            2450       2695 SCOTT            3000       3600 KING             5000       5000 TURNER           1500       1500 ADAMS            1100       1650 JAMES             950       1425 FORD             3000       3600 MILLER           1300       1950    SQL>; SELECT job, sal,2         DECODE(job, 'ANALYST'  SAL*1.1,3                     'CLERK',   SAL*1.15,4                     'MANAGER', SAL*1.20,5                                SAL)    6                REVISED_SALARY 7  FROM   emp;JOB             SAL REVISED_SALARY--------- --------- --------------    PRESIDENT      5000           5000 MANAGER        2850           3420 MANAGER        2450           2940    將空值轉換為實際的值數據格式可以是日期,字符,數字數據類型必須匹配NVL(comm,0)    NVL(hiredate,'01-JAN-97')    NVL(job,'No Job Yet')    NVL2(eXPr1,expr2,expr3)    假如expr1不為Null,返回expr2,假如expr1為Null,返回expr3. expr1可以為任何數據類型    NULLIF(expr1,expr2)    比較兩個表達式,假如相等返回空值,假如不等返回第一個值。    COALESCE(expr1,expr2,……,exprn)    返回表達式列表里的第一個非空表達式    錯誤:    在啟動數據庫時出現ORA-01157,ORA-01110或操作系統級錯誤例如ORA-07360,在關閉數據庫(使用shutdown normal或shutdown immediate) 時將導致錯誤ORA -01116,ORA-01110以及操作系統級錯誤ORA-07368    解決:    以下有兩種解決方案:    1.用戶的表空間可以被輕易地重建    即最近導出的對象是可用的或表空間中的對象可以被輕易地重建等。在這種情況下,最簡單的方法是offline并刪除該數據文件,刪除表空間并重建表空間以及所有的對象。    svrmgrl>; startup mount svrmgrl>; alter database datafile filename offline drop;svrmgrl>; alter database open;svrmgrl>; drop tablespace tablespace_name including contents;重建表空間及所有對象。    2.用戶的表空間不能夠被輕易地重建    在大多數情況下,重建表空間是不可能及太辛勞的工作。方法是倒備份及做介質恢復。假如您的系統運行在NOARCHIVELOG模式下,則只有丟失的數據在online redo log中方可被恢復。    步驟如下:    1)Restore the lost datafile from a backup 2)svrmgrl>; startup mount 3)svrmgrl>; select v1.group#,member,sequence#,first_change#   >; from v$log v1,v$logfile v2

   >; where v1.group#=v2.group#;    4)假如數據庫運行在NOARCHIVELOG模式下則:svrmgrl>; select file#,change# from v$recover_file;假如 CHANGE# 大于最小的FIRST_CHANGE#則數據文件可以被恢復。假如 CHANGE# 小于最小的FIRST_CHANGE#則數據文件不可恢復。 恢復最近一次的全備份或采用方案一。    5)svrmgrl>; recover datafile filename;6)確認恢復成功7)svrmgrl>; alter database open resetlogs;    3.只讀表空間無需做介質恢復,只要將備份恢復即可。唯一的例外是:    表空間在最后一次備份后被改為read-write 模式表空間在最后一次備份后被改為read-only 模式在這種情況下,均需進行介質恢復    二、臨時表空間    臨時表空間并不包含真正的數據,恢復的方法是刪除臨時表空間并重建即可。    三、系統表空間    假如備份不可用,則只能采用重建數據庫的方法    四、回滾表空間    有兩種情況:    1、數據庫已經完全關閉(使用shutdown immediate或shutdown命令)    1) 確認數據庫完全關閉2) 修改init.ora文件,注釋"rollback-segment" 3) svrmgrl>; startup restrict mount 4) svrmgrl>; alter database datafile filename offline drop;5) svrmgrl>; alter database open;基于出現的結果:"statement processed" 轉(7)    "ORA-00604,ORA-00376,ORA-01110"轉(6)    6) svrmgrl>; shutdown immediate修改init.ora文件,增加如下一行:_corrupted_rollback_segments = (,……)    svrmgrl>; startup restrict 7) svrmgrl>; drop tablespace tablespace_name including contents;重建表空間及回滾段9) svrmgrl>; alter system disable restricted session;10) 修改init.ora文件    2、數據庫未完全關閉(數據庫崩潰或使用shutdown abort命令關閉數據庫)    1) 恢復備份2) svrmgrl>; startup mount 3) svrmgrl>; select file#,name,status from v$datafile;svrmgrl>; alter database datafile filename online;4) svrmgrl>; select v1.group#,member,sequence#,first_change#   >; from v$log v1,v$logfile v2
   >; where v1.group#=v2.group#;    5) svrmgrl>; select file#,change# from v$recover_file;見一方案2-4 6) svrmgrl>; recover datafile filename;7) svrmgrl>; alter database open;    3、數據庫處于打開狀態    1) 刪除回滾段和表空間2) 重建表空間和回滾段    五、控制文件恢復    1.所有的控制文件均被破壞    將備份的控制文件拷貝至原目錄下對于RAW DEVICE,則:dd if='con.bak' of='/dev/rdrd/drd1' seek=128    2.并非所有的控制文件均被破壞用其他的控制文件啟動數據庫。    3. 數據文件上所存儲的表select a.segment_name from dba_extents a,dba_data_files b where a.file_id = b.file_id and b.file_name = '文件名全路徑' and a.segment_type = 'TABLE'    job不能自動運行check db parameters    job_queue_processes    if it set to 0 then set it larger than 0    job_queue_processes=1
    問題描述    執行如下語句select session_id,object_name from v$locked_object a,dba_objects b where a.object_id=b.object_id    error:   ora-03212 Temporary Segment cannt be cteated in locally-managed tablespace.    更改為sys 用戶 以dba登錄,可以查詢。    SHUTDOWN IMMEDIATE;STARTUP MOUNT;RECOVER DATABASE;ALTER DATABASE OPEN;    查看表大小!    select segment_name,(bytes/1024)/1024'M' 大小,((BLOCKS*DB_BLOCK_SIZE)/1024)/1024'M'占用空間from dba_segments where  segment_name = ……    db_block_size 是參數    查詢未提交事務select username, SID',' SERIAL# ses, T.STATUS , START_TIME, RN.NAME, USED_UBLK, USED_UREC from v$transaction T, v$session S, v$rollstat RS, v$rollname RN where T.SES_ADDR = S.SADDR and T.XIDUSN = RS.USN and RN.USN = RS.USN order by USED_UBLK;


上一篇:案例討論:批量刪除Oracle數據庫的數據

下一篇:Oracle數據庫管理系統:大數據的備份

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
學習交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網友關注

主站蜘蛛池模板: 亚洲午夜视频在线观看 | 日本一区二区精品 | 日韩精品免费在线观看 | 亚洲蜜臀av乱码久久精品蜜桃 | 99这里只有精品 | 亚洲一区二区三区四区五区午夜 | 男女午夜羞羞视频 | 性色av网| 亚洲精品在线免费看 | 日精品| 国产精品禁久久精品 | 精品视频久久久 | 欧美综合一区二区 | 蜜臀91精品国产高清在线观看 | 一本色道精品久久一区二区三区 | 一级日批片 | 久久成人综合 | 欧美久久久久久久久久伊人 | 91精品国产一区二区三区 | 91精品视频在线播放 | 伊人青青久 | 国产一区二区影院 | 欧美日本成人 | 日一区二区 | 黄色在线免费观看 | 羞羞小视频 | 91在线观看网站 | 日本xxww视频免费 | 欧美精品在线观看一区二区 | 久草一区 | 一区免费 | 草逼视频免费观看 | 欧美日韩国产在线观看 | 国产伦精品一区二区三区视频网站 | 在线日本中文字幕 | 一区视频 | 日本二区| 在线免费国产 | 久久久久久免费毛片精品 | 日本私人网站在线观看 | 性视频亚洲|