原创 postgres中查看函數創建語句

1、比如創建一個函數 postgres=# create function f_ret(id int) returns int as $$ postgres$# declare postgres$# begin postgres$#

原创 postgres中schema訪問權限設置

1、數據庫當前擁有的schema postgres=# \dn+ List of schemas Name | Owner | Access privileges

原创 11.2.0.3 xtts 遷移到12c PDB

1,源與目標數據庫的概況 編號      數據庫類型      數據庫名稱   數據庫版本    數據庫IP地址     操作系統平臺 1         oracleRAC    devdb     11.2.0.3      192

原创 linux 進制轉換

一、16進制轉換成10進制 8進制轉換10進制 printf "%d\n" 0xA printf "%d\n" 0012 10 10

原创 postgres-內存上下文分配源碼

AtStart_Memory(); --//xact.c /* * AtStart_Memory */ static void AtStart_Memory(void) { TransactionState

原创 使用eclipse分析postgres事務的調用開始過程

      postgres數據庫是開源數據庫,數據庫底層是通過C語言來實現的。這裏介紹使用eclipse的debug方式來動態跟蹤postgres中一個事務調用的開始過程(StartTransactionCommand)。 /* --

原创 Postgres登陸認證源碼

--//客戶端認證函數入口 ClientAuthentication(Port *port) void ClientAuthentication(Port *port) { int

原创 postgreSQL 時間線

“時間線”(Timeline)是PG一個很有特色的概念,在備份恢復方面的文檔裏面時有出現。但針對這個概念的詳細解釋卻很少,也讓人不太好理解,我們在此仔細解析一下。 時間線的引入 爲了理解引入時間線的背景,我們來分析一下,如果沒有時間線,會

原创 undo數據文件損壞-重新創建控制文件

#####刪除數據庫文件########### col file_name for a50 select file_name, tablespace_name from dba_data_files FILE_NAME          

原创 extundelete恢復誤刪除的oracle文件

1、恢復工具ext3grep或者extundelete、e2fsprogs extundelete工具安裝 extundelete下載地址:http://extundelete.sourceforge.net/ wget https://

原创 ORACLE事物一致性的內部原理探究

       修改的數據沒有提交之前,其他會話是看不到被修改的數據,被修改之前的數據會存放在UNDO裏面,那麼ORACLE是通過什麼的方式找到存放在UNDO裏面的數據呢?下面通過具體例子來說明       首先開啓兩個會話,其中第一個會話

原创 IPC Send timeout detected模擬和總結

       在多節點的集羣日誌中,經常會看到一些IPC Send timeout detected的報錯,有的時候是偶爾報一次,數據庫層面也看不出什麼異常,如果一段時間大量出現了IPC Send timeout detected的報錯,

原创 特殊手段恢復被truncate的表

       最近在寫oracle抽取數據文件工具,在抽取數據文件恢復數據的時候發現,恢復的數據比預期的多,經過對比之後發現是有一些表被truncate了,由於被truncate之後部分塊還沒有被覆蓋。所以這樣的數據也就抽取出來了。其實抽

原创 oradebug

sqlplus '/ as sysdba'  oradebug setmypid  oradebug unlimit  oradebug hanganalyze 3  oradebug hanganalyze 3  oradebug ha

原创 postgres判斷主備角色的五種方法

方式一:操作系統上查看WAL發送進程或WAL接收進程 流複製主庫上有WAL發送進程,流複製備庫上有WAL接收進程 主庫 [postgres@postgres pg11]$ ps -ef | grep "wal" | grep -v "g