E.49. 版本 1.02

發佈日期: 1996-08-01

E.49.1. 從 v1.02 遷移到 v1.02.1

1996-08-01

本文是用於 1.02.1 的新的遷移文件. 它包括 'copy' 的改變和一個用於轉換舊的 ascii 文件的腳本.

注意: 下面的訊息用於幫助那些希望從 postgres95 1.01 和 1.02 向 postgres95 1.02.1 遷移的用戶.

如果您剛剛開始使用 postgres95 1.02.1 並且不需要遷移舊的資料庫, 那麼您不需要閱讀下面的部分.

要想從舊的 postgres95 版本 1.01 或 1.02 資料庫向版本 1.02.1 升級, 需要進行下面步驟:

  1. 執行新的 1.02.1 postmaster

  2. 向1.01或1.02資料庫中增加新的內建函數. 方法是在您的1.01或1.02的資料庫上執行新的1.02.1伺服器然後運 行文末的查詢.這些工作可以很輕鬆的透過 psql 來完成. 如果您的1.01或1.02資料庫叫 "testdb" 並且您已經 把本文末尾的命令剪切下來並存入到文件 addfunc.sql 裡,那麼:

            % psql testdb -f addfunc.sql

    那些從1.02資料庫升級的人們在執行文件中這兩個語句時會看到警告訊息, 因為它們已經在1.02中出現了. 這些警告不會產生問題.

E.49.2. 傾倒/恢復過程

如果您試圖恢復用原先版本的 pg_dump 或文本模式的 'copy tablename to stdout'生成的資料, 您需要在那些ASCII 文件上執行下面的 sed 腳本,然後在恢復回資料庫中去. 因為原先的格式用'.'作為資料結束符,而現在使用'\.'. 同樣,現在空字元串用''進行裝載,而不是NULL. 請參閱 copy 的手冊頁獲取完整的細節描述.

        sed 's/^\.$/\\./g' <in_file >out_file

如果您從一個舊的二進制拷貝或非標準輸出拷貝中恢復資料, 就不需要做上述轉換,因為不存在資料結束符字元問題.

-- following lines added by agc to reflect the case-insensitive
-- regexp searching for varchar (in 1.02), and bpchar (in 1.02.1)
create operator ~* (leftarg = bpchar, rightarg = text, procedure = texticregexeq);
create operator !~* (leftarg = bpchar, rightarg = text, procedure = texticregexne);
create operator ~* (leftarg = varchar, rightarg = text, procedure = texticregexeq);
create operator !~* (leftarg = varchar, rightarg = text, procedure = texticregexne);

E.49.3. 修改列資料表

原始碼管理和開發
 * worldwide team of volunteers
 * the source tree now in CVS at ftp.ki.net

增強
 * psql (and underlying libpq library) now has many more options for
   formatting output, including HTML
 * pg_dump now output the schema and/or the data, with many fixes to
   enhance completeness.
 * psql used in place of monitor in administration shell scripts.
   monitor to be depreciated in next release.
 * date/time functions enhanced
 * NULL insert/update/comparison fixed/enhanced
 * TCL/TK lib and shell fixed to work with both tck7.4/tk4.0 and tcl7.5/tk4.1

修補(多得說不完)
 * indexes
 * storage management
 * check for NULL pointer before dereferencing
 * Makefile fixes

新移植
 * added SolarisX86 port
 * added BSD/OS 2.1 port
 * added DG/UX port