Time of Update: 2014-06-15
最近需要寫一個資料移轉指令碼,將單一Oracle中的資料移轉到MySQL Sharding叢集,剛好最近在學習python,就用它來練手。很快搞定了MySQL,只需要安裝一個MySQLdb的python模組就可以了。但是對於Oracle用戶端,不只需要安裝相應的python模組(這裡我用了Oracle官方的python模組——cx_Oracle),還需要安裝Oracle Client,一般選擇Instant Client就足夠了,還需要配置tnsnames.ora(當然也可以簡單的通過host:
Time of Update: 2014-06-15
df -h 查看磁碟空間,發現/dev/sda11 /app 100%檔案系統 容量 已用 可用 已用% 掛載點/dev/sda9 9.5G 539M
Time of Update: 2014-06-15
# /u01/app/Oracle/oraInventory/orainstRoot.shChanging permissions of /u01/app/oracle/oraInventory to 775.Changing groupname of /u01/app/oracle/oraInventory to oinstall.The execution of the script is complete# /u01/app/oracle/product/10.2.0/db_1/root.
Time of Update: 2014-06-15
建立監聽連接埠(使用Oracle Net Configuration Assistant和Oracle Net Manager建立並使用命令啟動,這兩種方法都經過嘗試)。再建立本地服務名,使用tnsping都可以通過。但是在建立服務名時,會發現測試提示如下錯誤: ORA-12514: TNS: 監聽程式當前無法識別串連描述符中請求的服務 解決辦法: 預設狀態下,建立listener1,會在檔案
Time of Update: 2014-06-15
任務:將userA所有的table(或view等)的select許可權(或insert等)授權給userB基本思想: 以usera登入.將select 'grant insert on '||table_name ||' to userb;' from user_objects ;產生的所有SQL語句執行。當然,還有更快捷的方式:將以下語句儲存在d:\a.sql,然後以usera登入,執行@d:\a.sql--//d:\a.sql
Time of Update: 2014-06-15
如何為 Oracle 10g XE 建立一個新的資料庫執行個體 ?如果是 Windows 平台, 首先確保沒甚麼重要資料在當前的這個 XE 執行個體中. 然後調用 oradim -delete -sid xe 刪除當前的系統服務(就是 Windows 服務).然後運行 D:\oracle\app\oracle\product\10.2.0\server\config\scripts 中的 XE.bat 批處理即可.如果是 Linux,就更容易了, 直接運行 scripts 目錄下的 XE.sh
Time of Update: 2014-06-15
//資料 A B C -- -- -- a1 b1 c1 a2 b2 c2 a3 b3 c3 //結果: row col value -- --- --
Time of Update: 2014-06-15
一、許可權分類:系統許可權:系統規定使用者使用資料庫的許可權。(系統許可權是對使用者而言)。實體許可權:某種許可權使用者對其它使用者的表或視圖的存取許可權。(是針對錶或視圖而言的)。二、系統許可權管理:1、系統許可權分類:DBA:
Time of Update: 2014-06-15
使用dbms_stats 還是analyze自從Oracle8.1.5引入dbms_stats包, Oracle及專家們就推薦使用dbms_stats取代analyze。 理由如下:1. dbms_stats可以並行分析2. dbms_stats有自動分析的功能(alter table monitor )3. analyze 分析統計資訊的有些時候不準確第1,2比較好理解,且第2點實際上在VLDB(Very Large Database)中是最迷人的;3以前比較模糊,看了metalink2369
Time of Update: 2014-06-15
版本確定方法在WL_HOME/wl_server10.3/server/lib下找到classes12.zip(早期版本的jdbc驅動)ojdbc.jar,或ojdbc6.jar檔案。通過解壓工具查看壓縮包中META-INF/ MANIFEST.MF $ more MANIFEST.MF Manifest-Version: 1.0Implementation-Vendor: Oracle CorporationImplementation-Title:
Time of Update: 2014-06-15
1、 1.建立新的Oracle執行個體;1、2.將原來預設安裝的ArcSDE 9.2\ArcSDE\ora9iexe檔案夾拷貝並重新命名為ora9iexe2(路徑為ArcSDE 9.2\ArcSDE\ora9iexe2),只要設定一下dbinit.sde中的ORACLE_SID使之對應到新建立的資料庫執行個體名。1、3.開始-程式……裡啟動post安裝,選擇自訂custom,然後勾掉create ArcSDE Service我們最後手工建立;進入下一步填寫你的oracle資料庫資訊;
Time of Update: 2014-06-15
V$SESSION在本視圖中,每一個串連到資料庫執行個體中的session都擁有一條記錄。包括使用者session及後台進程如DBWR,LGWR,arcchiver等等。V$SESSION中的常用列V$SESSION是基礎資訊視圖,用於找尋使用者SID或SADDR。不過,它也有一些列會動態變化,可用於檢查使用者。例如:SQL_HASH_VALUE,SQL_ADDRESS:這兩列用於鑒別預設被session執行的SQL語句。如果為null或0,那就說明這個session沒有執行任何SQL語句。PR
Time of Update: 2014-06-15
在Oracle中如果錯誤地提交了修改操作,然後想查看並修改原來的值,這時候可以使用查詢閃回(query flashback).查詢閃回可以根據根據一個時間值或者系統變更號(SCN:System Change Number)進行,資料庫使用SCN來跟蹤對資料進行的修改,因此可以用它來閃回到資料庫中一個特定的SCN時的狀態. 一.執行閃回操作,需要使用DBMS_FLASHBACK包,登入使用者要具有此包的EXECUTE許可權,下面以sys身份登入,並授權給使用者EXECUTE許可權:
Time of Update: 2014-06-15
SELECT F.TABLESPACE_NAME, (T.TOTAL_SPACE - F.FREE_SPACE) "USED (MB)", F.FREE_SPACE "FREE (MB)", T.TOTAL_SPACE "TOTAL (MB)", &
Time of Update: 2014-06-15
Oracle資料表空間(tableSpace)、段 (segment)、盤區(extent)、塊(block),這些都是Oracle用來儲存資料庫物件的配置單位段 就是資料庫物件,它消耗儲存空間,如表、索引、復原段等。當建立表的時候,將建立一個表段,當建立一個分區表時,即在每個分區上建立一個段,當建立索引 時,將建立一個索引段,每一個消耗儲存空間的對象最終被儲存在一個單一的段中,有復原段,臨時段,聚簇段、索引段等。一個段可以擁有來自許多不通資料檔案
Time of Update: 2014-06-15
一.在虛擬機器上安裝紅帽5系統虛擬機器版本:vmware workstation 7.11 build-282343紅帽5版本:[紅帽Linux.5.5.for.x86.伺服器版].rhel-server-5.5-i386-dvd(1)工具列file→new→viutual machine來建立新的虛擬機器1.選擇Typical(Recommend)選項→next2.選擇I will install the operating system later→next3.在Guest
Time of Update: 2014-06-15
Oracle分區表的管理筆記(僅限於對普通表,即堆表的分區管理,IOT跟CLUSTER TABLE不再討論範圍內)1. 增加分區(add partition)文法是:alter table xxx add partition…需要注意的是如果分區中存在maxvalue或default分區add partition會報錯,應使用split如:Alter table t_range add partition p5 values less than (50) [tablespace users];-
Time of Update: 2014-06-15
幫同事調試代碼:$sql_insert_user = sprintf( "INSERT INTO cc_user('cc_id', 'name', 'password') values (:cc_id, :name, :password)");一直提示SQL語句語法錯誤,無法進行 insert操作。直接在MySQL中執行SQL 陳述式時,是可以的。phpadmin 將產生的SQL 陳述式轉換成PHP代碼的時候,會發現,欄位屬性換成了
Time of Update: 2014-06-15
在工作期間利用三台破PC機器很老很老的那種,搭建了一個RAC的學習環境很是欣喜不已,這嘛,既利用了廢舊硬體,也為自己創造了學習環境,一舉多得,當然高興了哈! 一台主機中的時候報告了錯誤,如:心想這下子玩完了。 於是重啟系統,大約過了一分鐘後,登入系統,沒什麼問題,,不一會兒就又出現了上面的問題。 這麼久了還沒見過linux崩潰過(除了在一台Dell 750的機器上安裝CentOS 5.2,硬體不支援,害我重做了兩遍系統!)這是怎麼回事兒呢??
Time of Update: 2014-06-15
這幾天才知道MySQL 命令(command)自動補齊功能 (用了好幾年MySQL,現在才知道,真是慚愧呀)但是預設不是開啟的。若要開啟此功能,可以在Linux中vi /etc/my.cnf[mysql]#no-auto-rehashauto-rehash