提交 28ebe6b5 编写于 作者: B Bruce Momjian

Update Chinese FAQs to have two versions, a traditional Chinese version (Taiwan)

and a Simplified version (China (PRC)).

Backpatch to 8.2.X.

Daojing.Zhou
上级 c1958e5b
PostgreSQL 常FAQ
2007 年 1 5 15:40:20 EST
2007 年 1 29 22:48:04 CST
2007 年 1 30 17:37:01 EST
2007 年 2 1 12:55:04 CST
维人Bruce Momjian (pgman@candle.pha.pa.us)
维人Daojing.Zhoudoudou586@gmail.com
......@@ -29,6 +29,7 @@
1.11)该 SQL
1.12)交补
1.13)PostgreSQL 系起
1.14)PostgreSQL 以个家
客端
......@@ -317,6 +318,12 @@
们对任费
以 产 们代 们
声声 BSD容
1.14) PostgreSQL以个家?
PostgreSQL 8.0使系中
信8.0以PostgreSQL身
_________________________________________________________________
客端
......
PostgreSQL 常FAQ
2007 年 2 8 22:43:13 EST
2007 年 2 12 12:00:04 CST
人Bruce Momjian (pgman@candle.pha.pa.us)
人(ChaoYi, Kuo)kuo.chaoyi@gmail.com
http://www.postgresql.org/files/documentation/faqs/FAQ.html
系統平 http://www.postgresql.org/docs/faq/
_________________________________________________________________
1.1)PostgreSQL 麼該麼
1.2)誰管PostgreSQL
1.3)PostgreSQL麼
1.4)PostgreSQL以系統平
1.5)裡PostgreSQL
1.6) PostgreSQL 麼
1.7)裡 PostgreSQL
1.8)交 BUG
1.9)解已 BUG 缺
1.10)
1.11)該樣 SQL
1.12)交
1.13)PostgreSQL 庫系統起
1.14)PostgreSQL 以家
客端
2.1)以麼 PostgreSQL
2.2)麼工以 PostgreSQL Web
2.3)PostgreSQL 形(GUI)
系統管
3.1)樣 PostgreSQL /usr/local/pgsql 以
3.2)
3.3)樣調庫伺以好
3.4)PostgreSQL 裡以麼樣調試
3.5)麼試Sorry, too many clients
3.6)PostgreSQL 容
3.7)(使 PostgreSQL )使麼硬
4.1) 詢 幾
4.2) 表索庫以義 psql
裡詢令並顯示
4.3)
4.4) 表庫大
4.5) 件裡空
4.6) 麼詢麼詢索
4.7) 詢樣估詢
4.8) 樣表索大寫
表樣索大寫
4.9) 詢裡樣檢測
NULL確NULL
4.10) 種符麼
4.11.1) 樣建
4.11.2)
4.11.3) 使 currval()
4.11.4) 麼常麼中
4.12) 麼 OID麼 CTID
4.13) 麼誤ERROR: Memory exhausted in
AllocSetAlloc()
4.14) PostgreSQL
4.15) 建
4.16) outer join詢
4.17) 庫詢
4.18)
4.19) 麼使 PL/PgSQL 表誤relation
with OID ##### does not exist
4.20) 寫(replication)
4.21) 詢顯示表詢中
大寫
_________________________________________________________________
1.1) PostgreSQL 麼該麼
PostgreSQL Post-Gres-Q-L簡稱Postgres
人裡件 MP3
PostgreSQL 庫系統統業
庫系統代 DBMS
系統使強PostgreSQL
費並代碼以
PostgreSQL
主並網繫社
被任
人常FAQ
http://www.postgresql.org/files/documentation/faqs/FAQ_DEV.html
1.2) 誰 PostgreSQL
PostgreSQL人麼中
央麼屬 ---
確 CVS管工設
主管工PostgreSQLPostgreSQL
任人
人社 就件表
PostgreSQL詳 人常 (Developer's FAQ)
1.3) PostgreSQL 麼?
PostgreSQL BSD 許使
PostgreSQL 以 PostgreSQL
代碼以就 身追訴
責任就 以
就使BSD容
PostgreSQL 庫管系統
c1996-2005PostgreSQL c1994-1996
Portions copyright (c) 1996-2005,PostgreSQL Global Development Group
Portions Copyright (c) 1994-6 Regents of the University of
California
許任使修任費
並 簽署 段以段
Permission to use, copy, modify, and distribute this software and
its documentation for any purpose, without fee, and without a written
agreement is hereby granted, provided that the above copyright notice
and this paragraph and the following two paragraphs appear in all
copies.
任 大 使
任人
伴失責任使 大
已建失
IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY
PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, INCLUDING LOST PROFITS, ARISING OUT OF THE USE OF THIS
SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF CALIFORNIA
HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
大確任
裡份 大責任維
強修
THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE
PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE UNIVERSITY OF
CALIFORNIA HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT,
UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
1.4) PostgreSQL 以系統平
說任 UNIX 容系統 PostgreSQL
裡確測試平
PostgreSQL 以微 Windows-NT 系統
Win2000 SP4WinXP Win2003已製
http://pgfoundry.org/projects/pginstallerMSDOSWindows業
系統 Win95Win98WinMeCygwin模PostgreSQL
Novell Netware 6 http://forge.novell.com
OS/2(eComStation)
http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&button=Search&key=postgre
SQL&stype=all&sort=type&dir=%2F
1.5) 裡 PostgreSQL
覽 http://www.postgresql.org/ftp/ FTP
ftp://ftp.PostgreSQL.org/pub/
1.6) PostgreSQL 麼
PostgreSQL 8.2.3
年主幾
1.7) 裡 PostgreSQL
PostgreSQL社件表大幫件表主
http://www.postgresql.org/community/lists/ General
Bug件表好
主IRC FreeNode(irc.freenode.net)#postgresql
以使 UNIX irc令 irc -c '#postgresql'
"$USER" irc.freenode.net 使IRC客端網絡
PostgreSQL 西 (#postgersql-es)
(#postgresql-fr)樣 EFNET PostgreSQL 交
表 http://techdocs.postgresql.org/companies.php
1.8) 交 BUG
訪 http://www.postgresql.org/support/submitbug填寫 Bug
表 樣訪 ftp ftp://ftp.PostgreSQL.org/pub/
檢PostgreSQL
使 Bug 交表 PostgreSQL 件表 Bug
常以
* 交容 Bug Bug
* 交容已 Bug 並已 TODO 任表
* 交 Bug 已被修
* 交 Bug 已修
* 交詳細
+ 系統
+ PostgreSQL
+ Bug 測試
+ 調試
+ 調試蹤輸
* 交容 Bug以工
+ 建並 主
+ Bug 修被 TODO 任表
1.9) 解已 BUG 缺
PostgreSQL SQL:2003 TODO 表解已 Bug
表缺
常以
* 該已 TODO 任表
* 該
+ 符 SQL
+ 該大大 代碼帶好微足
+ 該
* 該被 TODO 任表
PostgreSQL 使 Bug 蹤系統 件表中
以 TODO
任表總工實Bug中
影Bug總快被修
修 CVS
使
1.10)
PostgreSQL 大主詳細 測試
/doc 註 $PGHOME/doc 以覽 PostgreSQL
網http://www.PostgreSQL.org/docs
PostgreSQL
http://www.postgresql.org/docs/books/awbook.html
http://www.commandprompt.com/ppbook/ 大 PostgreSQL
購買 Korry Douglas 編寫
http://techdocs.PostgreSQL.org/techdocs/bookreviews.php 大
PostgreSQL 簡 http://techdocs.PostgreSQL.org/
PostgreSQL 大
客端令psql以 \d
令顯示符使 \?
以顯示令
web
1.11) 該樣 SQL
述PostgreSQL Teach Yourself SQL in
21 Days, Second Edition詳細紹網
http://members.tripod.com/er4ebus/sql/index.htm 許The
Practical SQL Handbook Bowman, Judith S.
編寫Addison-Wesley The Complete Reference SQL,
Groff 編寫McGraw-Hill
網好
* http://www.intermedia.net/support/sql/sqltut.shtm
* http://sqlcourse.com.
* http://www.w3schools.com/sql/default.asp
* http://mysite.verizon.net/Graeme_Birchall/id1.html
1.12)交
詳 人常 (Developer's FAQ)
1.13) PostgreSQL 庫系統起
好幾種
PostgreSQL 大庫
詢觸
義繼並
PostgreSQL庫似快
庫常 +/-
10%
庫 就
測試缺穩代碼 beta
測試並
顯示以穩使信
件表常大人以幫解決碰
總解決庫並總
人群觸使PostgreSQL
庫好業
以給給人1.7
任費
以 裡 代碼
裡 BSD容
1.14) PostgreSQL 以家?
PostgreSQL 8.0使系統庫
8.0 以 PostgreSQL 身
_________________________________________________________________
客端
2.1) 以麼 PostgreSQL
PostgreSQL ( ) C C
編 PHP 訪 PostgreSQL PerlTCLPython
以 http://gborg.postgresql.org 網
Drivers/Interfaces 並 Internet 容索
2.2) 麼工以 PostgreSQL Web
紹以庫http://www.webreview.com
Web PHP 極好 http://www.php.net/
任人 Perl 使 CGI.pm DBD::Pg mod_perl
2.3)PostgreSQL 形
人 PostgreSQLGUI 形工
PostgreSQL社 詳細表
_________________________________________________________________
系統管
3.1)樣 PostgreSQL /usr/local/pgsql 以
configure --prefix
3.2)
PostgreSQL 許 unix TCP/IP
修置件 postgresql.conf
listen_addresses置件 $PGDATA/pg_hba.conf
host-based 身份並
PostgreSQL PostgreSQL 伺
3.3) 樣調庫以好
主以 PostgreSQL
主修詢以好:
+ 建索表索
+ 使 COPY 代 Insert
+ SQL以交
+ 索使 CLUSTER
+ 詢使 LIMIT
+ 使 編詢Prepared Query)
+ 使 ANALYZE 以精確統
+ 使 VACUUM pg_autovacuum
+ 大索建索
伺置
置件 postgres.conf 設
置影表
管/庫伺/庫伺置
解http://www.varlena.com/varlena/GeneralBits/Tidb
its/annotated_conf_e.html
http://www.varlena.com/varlena/GeneralBits/Tidbits/perf.html
硬影覽
http://candle.pha.pa.us/main/writings/pgsql/hw_performance/inde
x.html http://www.powerpostgresql.com/PerfList/
3.4)PostgreSQL 裡以麼樣調試
PostgreSQL 似 log_*
伺置詢統工調試測試
3.5) 麼試Sorry, too many
clients已太
表示 已 100 並() 修
postgresql.conf 件 max_connections postmaster
併修 postmaster
3.6)PostgreSQL 容
PostgreSQL 次主 Bug 修工
7.4.8 7.4.9 dump restore
庫伺伺
PostgreSQL該 使主快
管次風PostgreSQL 修
Bug
碼以風PostgreSQL社
主 7.3 7.4常修系統表表
件容 中
dump/中
reload主
3.7)(使 PostgreSQL )使麼硬
硬大容人總信硬質
實 ECC RAM帶 SCSI
硬質主便貨 好
PostgreSQL 幾以任硬
系統 就 究 硬
件表 硬置
_________________________________________________________________
4.1) 詢 幾
幾並 詢中
確 以使 LIMIT 索 ORDER BY 中
件PostgreSQL 就 幾
詢詢確
使游(cursor)FETCH
使以
SELECT cols
FROM tab
ORDER BY random()
LIMIT 1 ;
4.2)
表索庫以義psql裡詢令並顯示
psql使 \dt 令顯示表義解 psql 中
令表使 \? 以 psql 代碼 件
pgsql/src/bin/psql/describe.c psql 令輸 SQL
令 以帶 -E psql 樣 psql 中
給令實使 SQL
詢PostgreSQL容 SQL INFORMATION SCHEMA
以裡庫
系統以 pg_ 系統表述表義
使 psql -l 令以庫
以覽 pgsql/src/tutorial/syscat.source
件庫系統表SELECT
4.3)
8.0裡容使 ALTER TABLE ALTER COLUMN
TYPE
以以樣
BEGIN;
ALTER TABLE tab ADD COLUMN new_col new_data_type;
UPDATE tab SET new_col = CAST(old_col AS new_data_type);
ALTER TABLE tab DROP COLUMN old_col;
COMMIT;
以使 VACUUM FULL tab 令使系統空
4.4) 表庫大
庫大尺寸 已 32TB 庫
表大尺寸 32 TB
大尺寸 1.6 TB
大尺寸? 1 GB
表裡大
表裡大 250-1600
表裡大索
實空/交
實述常大系統大影
表大大 32 TB 業
系統件麼大大表 1 GB 件
件系統大
大 32K 大表大大以
就大2000
建索幸樣索
容MD5索
並檢索許索
4.5) 件裡空
Postgres 庫
件空件身大5空
100,000 件述 設
串平度20(Byte)件 2.8 MB
PostgreSQL庫件大 5.2 MB:
24 : 大
24 :
+ 4 :
----------------------------------------
52
PostgreSQL 大 8192 (8 KB)
8192
------------------- = 158 /
52
100000
-------------------- = 633
146 /
633 * 8192 / = 5,185,536 5.2 MB
索麼確實被索
空 NULL 空
4.6) 麼詢麼詢索
並詢使索表大並詢
表索 索起
使索PostgreSQL
表統統以使 VACUUM ANALYZE ANALYZE
使統表中
就 好索
統確 表容
索常 ORDER BY
大表次 次常索快
LIMIT ORDER BY
起使話常使索 表
確信PostgreSQL使 確 以使SET
enable_seqscan TO 'off'令
次詢 就以使索確實快
使符 LIKE ~ 索使
* 符串 符串就說
+ LIKE 模以 %
+ ~ 表模 以 ^
* 符串以符模 [a-e]
* 大寫 ILIKE ~* 使索以 4.8
述表索
* initdb 置 C
locale 系統 C locale 大符麼
種 以建 text_pattern_ops 索
LIKE 索
8.0 中
詢索索常被
int2, int8 索
4.7) 詢樣估詢
EXPLAIN
4.8) 樣表索大寫
表樣索大寫
符 ~ 表 ~* 大寫表大寫
LIKE 種 ILIKE
大寫常寫
SELECT *
FROM tab
WHERE lower(col) = 'abc';
樣使索以建種使表索
:
CREATE INDEX tabindex ON tab (lower(col));
述索建 UNIQUE 索身容以
大寫容 UNIQUE
容大寫
種以使 CHECK 件觸
4.9) 詢裡樣檢測 NULL
確 NULL
IS NULL IS NOT NULL 測試
SELECT *
FROM tab
WHERE col IS NULL;
NULL ORDER BY 件使 IS NULL IS NOT
NULL 修飾符件 true 件 false
就 NULL
SELECT *
FROM tab
ORDER BY (col IS NOT NULL)
4.10) 種符麼
稱 說
VARCHAR(n) varchar 大度
符串足義度
CHAR(n) bpchar 符串實足義度以空
TEXT text 大度
BYTEA bytea 使NULL符許
"char" char 符
系統表誤裡 稱
種 "varlena"就說
度 實空大
義以被縮
VARCHAR(n) 大度符串好 TEXT
大 1G 左義度符串
CHAR(n) 度符串
CHAR(n) 給度以空 足足容
VARCHAR(n) 給容 BYTEA 尤
NULL 差
4.11.1) 樣建
PostgreSQL SERIAL
義SERIAL建
CREATE TABLE person (
id SERIAL,
name TEXT
);
以SQL
CREATE SEQUENCE person_id_seq;
CREATE TABLE person (
id INT4 NOT NULL DEFAULT nextval('person_id_seq'),
name TEXT
);
create_sequence
4.11.2)
種 nextval() 象裡檢索 SERIAL
精確使 4.11.1 裡表碼樣述
new_id = execute("SELECT nextval('person_id_seq')");
execute("INSERT INTO person (id, name) VALUES (new_id, 'Blaise Pascal')");
樣詢使 new_id 裡 person
表 注建 SEQUENCE 象稱
<table>_<serialcolumn>_seq 裡 table serialcolumn
表稱 SERIAL 稱
似 SERIAL 象 以 currval() 檢索賦
SERIAL
execute("INSERT INTO person (name) VALUES ('Blaise Pascal')");
new_id = execute("SELECT currval('person_id_seq')");
4.11.3) 使 currval()
currval() 次話賦
4.11.4) 麼常麼
併賦
並 就常中
4.12) 麼 OID 麼 CTID
PostgreSQL 裡建 OID建表使
WITHOUT OIDS OID 建 4 OID
PostgreSQL 伺 40溢 OID
PostgreSQL 系統表裡使 OID
表建繫
表好使 SERIAl 代 OID SERIAL
表就以樣溢就常
SERIAL8 8
CTID 帶移 CTID
被索使
4.13) 麼誤ERROR: Memory exhausted in AllocSetAlloc()
系統
postmaster 試試令
ulimit -d 262144
limit datasize 256m
shell令 段
許詢令以令建
SQL客端 太客
述令
4.14) PostgreSQL
psql 裡輸 SELECT version();令
4.15) 建
使 CURRENT_TIMESTAMP
CREATE TABLE test (x int, modtime TIMESTAMP DEFAULT CURRENT_TIMESTAMP );
4.16) 樣 outer join
PostgreSQL SQL 裡
SELECT *
FROM t1 LEFT OUTER JOIN t2 ON (t1.col = t2.col);
SELECT *
FROM t1 LEFT OUTER JOIN t2 USING (col);
詢 t1.col t2.col 並 t1 中
t2 []RIGHT OUTER
JOIN t2 FULL OUTER JOIN t1 t2
OUTER 左[][][]中
被稱INNER JOIN
4.17) 使庫詢
辦詢庫庫
PostgreSQL 庫系統系統表
跨庫詢
模 contrib/dblink
許調實跨庫詢以庫
詢客端併
4.18)
容使詳
http://techdocs.postgresql.org/guides/SetReturningFunctions
4.19) 麼使 PL/PgSQL 表誤relation with OID
##### does not exist
PL/PgSQL 緩容帶好
PL/PgSQL
訪表該表被並建次調該
緩容表解決 PL/PgSQL 中
EXECUTE 表訪樣詢總被解
4.20) 寫(replication)
寫好幾種寫種缺
主/寫許主伺/寫伺
/SELECT詢 費主/PostgreSQL寫
Slony-I
主伺寫許/寫給主種
伺 帶失Pgcluster
種好並以費
費硬寫述種寫模
4.21) 詢顯示表詢大寫
常 建表表使( ' '
)使表稱符 大寫
詢表使工 pgAdmin
建表令符
符統 該
* 建表符使起
* 符使寫
* 已符詢使符起
......@@ -15,8 +15,8 @@
<h1> PostgreSQL 常见问题(FAQ) </h1>
<p> 最近更新:2007 年 1 月 5 日 星期五 15:40:20 EST <br/>
中文版最近更新:2007 年 1 月 29 日 星期一 22:48:04 CST
<p> 最近更新:2007 年 1 月 30 日 星期二 17:37:01 EST <br/>
中文版最近更新:2007 年 2 月 1 日 星期四 12:55:04 CST
</p>
<p> 目前维护人员:Bruce Momjian (<a href="mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</a>)<br/>
中文版维护人员:Daojing.Zhou(<a href="mailto:doudou586@gmail.com">doudou586@gmail.com</a>
......@@ -49,7 +49,8 @@
<a href="#1.11">1.11</a>)我应该怎样学习 SQL ?<br/>
<a href="#1.12">1.12</a>)如何提交补丁或是加入开发队伍?<br/>
<a href="#1.13">1.13</a>)PostgreSQL 和其他数据库系统比起来如何?<br/>
<a href="#1.13">1.13</a>)PostgreSQL 和其他数据库系统比起来如何?<br/>
<a href="#1.14">1.14</a>)PostgreSQL 可以处理最近各个国家夏时制的变化吗?<br/>
</p>
<h2><a name="用户客户端问题"></a> 用户客户端问题 </h2>
......@@ -393,6 +394,10 @@ PostgreSQL不使用Bug跟踪系统,因为我们发现在邮件列表中直接
</dl>
<h3><a name="1.14"></a>1.14) PostgreSQL可以处理最近各个国家夏时制的变化吗?</h3>
<p>PostgreSQL 8.0之前的版本是使用操作系统中的时区数据库来处理夏时制的信息,自8.0版及以后的版本PostgreSQL会自身含有最新的时区信息。</p>
<hr/>
......
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册