1 select COMPCODE,
2 COMPNAME,
3 LEVEL,
4 TOTAL,
5 F_CAC_VAL('1' || SYS_CONNECT_BY_PATH(TOTAL, '*')) V,
6 '1' || SYS_CONNECT_BY_PATH(TOTAL, '*') P
7 from T_M_COMPONENT T
8 where COMPTYPE = 0
9 start with bompid = 117808
2 COMPNAME,
3 LEVEL,
4 TOTAL,
5 F_CAC_VAL('1' || SYS_CONNECT_BY_PATH(TOTAL, '*')) V,
6 '1' || SYS_CONNECT_BY_PATH(TOTAL, '*') P
7 from T_M_COMPONENT T
8 where COMPTYPE = 0
9 start with bompid = 117808
10 connect by NOCYCLE prior bomid = bompid 一. 數(shù)據(jù)閃回功能
在ORACLE使用過程中經(jīng)常會(huì)誤刪除行記錄,而且COMMIT了,怎樣找回誤刪的數(shù)據(jù)是個(gè)麻煩事.
1
SQL> select dbms_flashback.get_system_change_number fscn from dual;
2
3
FSCN
4
----------
5
6603893

2

3

4

5

2.根據(jù)閃回點(diǎn)追尋數(shù)據(jù)

看看如果誤刪的數(shù)據(jù)存在這里,即可根據(jù)6589999這個(gè)點(diǎn)進(jìn)行回閃數(shù)據(jù)
3.恢復(fù)數(shù)據(jù)



4.另外一種方法
select * from 表名 as of timestamp sysdate-1/6
```````````````這里是4小時(shí)之前的數(shù)據(jù)
如果表被drop了,則使用:
flashback table 表名 to before drop;
二.ORACLE創(chuàng)建用戶指令








三.ORACLE啟動(dòng)指令
1
# su - oracle //關(guān)鍵
2
# sqlplus /nolog
3
SQL>startup mount
4
SQL>ALTER DATABASE OPEN
5
SQL>STARTUP
6
$ lsnrctl start
7
$ emctl start dbconsole

2

3

4

5

6

7

四.ORACLE數(shù)據(jù)庫的字符集轉(zhuǎn)換

五.更新記錄不存在,則插入
1
BEGIN
2
UPDATE T_TABLE SET COL='VALUE' WHERE 1=2;
3
IF SQL%ROWCOUNT < 1 THEN
4
INSERT INTO T_TALBE(COL) VALUES('VALUE');
5
END IF;
6
END;

2

3

4

5

6

六. 在Redhat5.7-x64上安裝11gR1遇到的問題
第一次安裝老有很多包找不到,裝到復(fù)制文件78%左右,出現(xiàn)不能編譯腳本的錯(cuò)誤,手動(dòng)安裝gcc也失敗,后來重裝系統(tǒng),一定要安裝老的開發(fā)工具,否則找不著gcc,不能正常安裝,碰上x-server的情況,可用root執(zhí)行xhost + 命令
安裝后面出現(xiàn)了一個(gè)錯(cuò)誤,dbms腳本錯(cuò)誤,結(jié)果實(shí)例沒有配置完成,導(dǎo)致數(shù)據(jù)庫不能使用
sqlplus /nolog 可以登錄并且啟動(dòng)實(shí)例,但是sqlplus 帳號(hào)/密碼@實(shí)例不能登錄,tnsping是正常的,懷疑tns的oracle_sid和實(shí)例的sid可能不一樣發(fā)現(xiàn)原因:
$ORACLE_HOME/dbs/init.ora 里缺少intance_name
可能是上面的錯(cuò)誤導(dǎo)致init.ora的參數(shù)未初始化完畢
#su oracle
$sqlplus /nolog
$conn / as sysdba
$shutdown abort
$startup
成功啟動(dòng),再連接 OK!
七.樹形卷疊計(jì)算
七. linux常用的簡單命
七. linux常用的簡單命
令
八: 設(shè)置權(quán)限:chmod 777 db_data
八:禁用exp導(dǎo)出權(quán)限
sys權(quán)限進(jìn)入oracle,執(zhí)行
1 select COMPCODE,
2 COMPNAME,
3 LEVEL,
4 TOTAL,
5 F_CAC_VAL('1' || SYS_CONNECT_BY_PATH(TOTAL, '*')) V,
6 '1' || SYS_CONNECT_BY_PATH(TOTAL, '*') P
7 from T_M_COMPONENT T
8 where COMPTYPE = 0
9 start with bompid = 117808
10 connect by NOCYCLE prior bomid = bompid
目錄授權(quán)(修改目錄所有者): chown -R oracle:dba db_data/ 3 LEVEL,
4 TOTAL,
5 F_CAC_VAL('1' || SYS_CONNECT_BY_PATH(TOTAL, '*')) V,
6 '1' || SYS_CONNECT_BY_PATH(TOTAL, '*') P
7 from T_M_COMPONENT T
8 where COMPTYPE = 0
9 start with bompid = 117808
10 connect by NOCYCLE prior bomid = bompid
八: 設(shè)置權(quán)限:chmod 777 db_data
八:禁用exp導(dǎo)出權(quán)限
sys權(quán)限進(jìn)入oracle,執(zhí)行
revoke select on sys.exu8usru from public;