FAQ in farsi (txt version)
this is txt version of farsi translation I had submitted before.
With Regards,
--taghi
---------------------------------
Do you Yahoo!?
Take Yahoo! Mail with you! Get it on your mobile phone.
PostgreSQL FAQسÙ?اÙ?اتÙ? Ù?Ù? اغÙ?ب در Ù?Ù?رد PostgreSQLâ?? پرسÙ?دÙ? Ù?Ù? Ø´Ù?Ù?د
تارÙ?Ø® آخرÙ?Ù? اصÙ?Ø§Ø Ø§Ù?Ù? Ù?اÙ?Ù?: 28 Ø´Ù?رÛ?Ù?ر 1383 Ù?جرÛ? Ø´Ù?سÛ?
Ù?Ú¯Ù?دارÙ?دÙ? اصÙ?Ù? Ù?اÙ?Ù? (زباÙ? اÙ?Ú¯Ù?Ù?سÙ?)در ØØ§Ù? ØØ§Ø¶Ø± : Bruce Momjian
pgman(at)candle(dot)pha(dot)pa(dot)us
Ù?Ú¯Ù?دارÙ?دÙ? Ù?اÙ?Ù? بÙ? زباÙ? Ù?ارسÙ?: m(dot)taghizadeh(at)imenafzar(dot)net Ù?ØÙ?Ù?د تÙ?Ù?â??زادÙ? Ù?Ù?رجردÛ?
آخرÙ?Ù? Ù?سخÙ? اÙ?Ù? Ù?اÙ?Ù? را Ù?Ù?â??تÙ?اÙ?Ù?د از اÙ?Ù? آدرس بگÙ?رÙ?د
http://www.PostgreSQL.org/docs/faqs/FAQ.html
سÙ?اÙ?اتÙ? Ù?Ù? در Ù?Ù?رد Ù?Ù? سکÙ?Û?(Ù¾Ù?تÙ?رÙ?) خاص است در اÙ?Ù? آدرس جÙ?اب دادÙ? شدÙ? اÙ?د
http://www.PostgreSQL.org/docs/index.html
سÙ?اÙ?ات عÙ?Ù?Ù?Ù?
1.1) PostgreSQL Ú?Ù?ست Ù? Ú?Ú¯Ù?Ù?Ù? باÙ?د Ø¢Ù? را تÙ?Ù?ظ Ù?ردØ?
1.2) Ù?اÙ?Ù?Ù? Ù?Ù¾Ù? راÙ?تâ?? (ØÙ?Ù?Ù? Ù?عÙ?Ù?Ù?) در Ù?Ù?رد PostgreSQL بÙ? Ú?Ù? صÙ?رت استØ?
1.3) PostgreSQLâ?? رÙ?Ù? Ú?Ù? Ù?Ù?ع Ù?Ù?Ù?Ù?Ù?سÙ?اÙ?Ù? اجرا Ù?Ù?â??Ø´Ù?دØ?
1.4) رÙ?Ù? Ú?Ù? Ù?ØÙ?Ø·Ù?اÙ? غÙ?ر Ù?Ù?Ù?Ù?Ù?سÙ? Ù?Ù?â??تÙ?اÙ? Ø¢Ù? را اجرا Ù?ردØ?
1.5) PostgreSQL را از Ù?جا Ù?Ù?â??تÙ?اÙ?Ù? بگÙ?رÙ?Ø?
1.6) از Ù?جا خدÙ?ات پشتÙ?باÙ?Ù? بگÙ?رÙ?Ø?
1.7) آخرÙ?Ù? Ù?سخÙ? اعÙ?اÙ? شدÙ? Ú?Ù?ستØ?
1.8) Ú?Ù? Ù?ستÙ?دات Ù? راÙ?Ù?Ù?ائÙ?Ù?اÙ?Ù? Ù?جÙ?د دارÙ?دØ?
1.9) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? ازاشÙ?اÙ?ات Ø´Ù?اختÙ? شدÙ? Ù? Ù?ا اÙ?Ù?اÙ?اتÙ? Ù?Ù? در اÙ?Ù? پاÙ?گاÙ? دادÙ?
Ù?جÙ?د Ù?دارد Ù?Ø·Ù?ع Ø´Ù?Ù?Ø?
1.10) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? زباÙ? SQL را Ù?اد بگÙ?رÙ?Ø?
1.11) Ø¢Ù?ا PostgreSQL Ù?Ø´Ù?Ù? Y2Kâ?? دارد Ù?ا Ø®Ù?رØ?
1.12) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? بÙ? تÙ?Ù? برÙ?اÙ?Ù? Ù?Ù?Ù?س PostgreSQL Ù?Ù?ØÙ? Ø´Ù?Ù?Ø?
1.13) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? Ù?Ù? اشÙ?اÙ? را بÙ? گرÙ?Ù? برÙ?اÙ?Ù? Ù?Ù?Ù?س اعÙ?اÙ? Ù?Ù?Ù?Ø?
1.14) Ù?ضعÙ?ت PostgreSQLâ?? در Ù?Ù?اÙ?سÙ? با ساÙ?ر DBMSÙ?ا بÙ? Ú?Ù? صÙ?رت استØ?
1.15) Ù?Ù? Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? از Ù?ظر Ù?اÙ?Ù? بÙ? PostgreSQL Ù?Ù?Ù? Ù?Ù?Ù?Ø?
سÙ?اÙ?ات Ù?ربÙ?Ø· بÙ? استÙ?ادÙ? از پاÙ?گاÙ? دادÙ?
2.1) Ø¢Ù?ا Ù?Ù?Ú? دراÙ?Ù?ر ODBCâ?? براÙ? PostgreSQL Ù?جÙ?د داردØ?
2.2) Ú?Ù? ابزارÙ?اÙ?Ù? براÙ? استÙ?ادÙ? از PostgreSQLâ?? با صÙ?ØØ§Øª Ù?ب Ù?جÙ?د داردØ?
2.3) Ø¢Ù?ا PostgreSQLâ?? Ù?Ù? Ù?اسط Ù?اربرÙ? گراÙ?Ù?Ù?Ù? داردØ?
2.4) با Ú?Ù? زباÙ?Ù?اÙ? برÙ?اÙ?Ù?â??Ù?Ù?Ù?سÙ? Ù?Ù?â??تÙ?اÙ? با PostgreSQLâ?? ارتباط برÙ?رار Ù?ردØ?
سÙ?اÙ?ات Ù?ربÙ?Ø· بÙ? راÙ?برÙ?
3.1) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? PostgreSQLâ?? را در شاخÙ?â??اÙ? غÙ?ر از /usr/local/pgsql/ Ù?صب Ù?Ù?Ù?Ø?
3.2) Ú?را Ù?Ù?Ù?عÙ? Ù?Ù? Ù?Ù? برÙ?اÙ?Ù? postmasterâ?? را اجرا Ù?Ù? Ù?Ù?Ù? Ù¾Ù?اÙ? Bad system callâ?? Ù?
Ù?ا core dump â??Ù?Ù?â??Ú¯Ù?رÙ?Ø?
3.3) Ú?را Ù?Ù?Ù?عÙ? Ù?Ù? Ù?Ù? سعÙ? Ù?Ù?â??Ù?Ù?Ù? برÙ?اÙ?Ù? postmasterâ?? را اجرا Ù?Ù?Ù? خطاÙ?
IpcMemoryCreate Ù?Ù?â??Ú¯Ù?رÙ?Ø?
3.4) Ú?را Ù?Ù?Ù?عÙ? Ù?Ù? Ù?Ù? سعÙ? Ù?Ù?â??Ù?Ù?Ù? برÙ?اÙ?Ù? postmasterâ?? را اجرا Ù?Ù?Ù? خطاÙ?
IpcSemaphoreCreate Ù?Ù?â??Ú¯Ù?رÙ?Ø?
3.5) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? اتصاÙ?ات ساÙ?ر Ù?اشÙ?Ù?Ù?ا را Ù?Ù?ترÙ? Ù?Ù?Ù?Ø?
3.6) براÙ? Ù?اراÙ?Ù? باÙ?اتر Ù? بÙ?تر پاÙ?گاÙ? دادÙ? Ù?Ù? Ú?Ù? تÙ?ظÙ?Ù?اتÙ? را باÙ?د اÙ?جاÙ? دÙ?Ù?Ø?
3.7) Ú?Ù? اÙ?Ù?اÙ?اتÙ? براÙ? Ù¾Ù?دا Ù?ردÙ? اشÙ?اÙ?â?? Ù?جÙ?د داردØ?
3.8) Ú?را Ù?Ù?Ù?عÙ? Ù?Ù? Ù?Ù? Ù?Ù?â??Ø®Ù?اÙ?Ù? بÙ? پاÙ?گاÙ? دادÙ? Ù?صÙ? Ø´Ù?Ù? Ù¾Ù?اÙ? "Sorry, too many
clients" â??Ù?Ù?â??Ú¯Ù?رÙ?Ø?
3.9) در شاخÙ? pgsql_tmp Ú?Ù? Ú?Ù?زÙ? Ù?رار داردØ?
3.10) Ú?را براÙ? بÙ? رÙ?ز Ù?ردÙ? Ù?سخÙ? پاÙ?گاÙ? دادÙ? Ù?Ù? باÙ?د Ù?Ù? دادÙ? Ù?ا را dumpâ?? Ù? Ù?جدداÙ?
restore Ù?Ù?Ù?Ø?
3.11) از Ú?Ù? سخت اÙ?زارÙ? باÙ?د استÙ?ادÙ? Ù?Ù?Ù?Ø?
سÙ?اÙ?ات عÙ?Ù?Ù?اتÙ?
4.1) تÙ?اÙ?ت بÙ?Ù? binary cursors Ù? Normal cursors Ú?Ù?ستØ?
4.2) Ù?Ù? Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? Ù?Ù?Ø· رÙ?Ù? Ú?Ù?د ردÙ?Ù? اÙ?Ù? Ù?ا Ù?Ù? ردÙ?Ù? تصادÙ?Ù? درخÙ?است SELECTâ??
بزÙ?Ù?Ø?
4.3) Ù?Ù? Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? Ù?Ù?ستÙ? از جداÙ?Ù? Ù?ا ساÙ?ر Ú?Ù?زÙ?اÙ?Ù? Ù?Ù? در psqlâ?? Ù?جÙ?د دارد را
ببÙ?Ù?Ù?Ø?
4.4) Ú?Ú¯Ù?Ù?Ù? Ù?Ù? ستÙ?Ù? جدÙ?Ù? را ØØ°Ù? Ù?Ù?â??Ù?Ù?Ù?دØ? Ú?Ú¯Ù?Ù?Ù? Ù?Ù?ع دادÙ? Ø¢Ù? را عÙ?ض Ù?Ù?Ù?Ù?Ø?
4.5) ØØ¯Ø§Ù?ثر اÙ?دازÙ? Ù?Ù? ردÙ?Ù?Ø?â?? جدÙ?Ù? Ù? Ø®Ù?د پاÙ?گاÙ? دادÙ? Ú?Ù?در استØ?
4.6) Ú?Ù?در Ù?ضاÙ? دÙ?سÙ? سخت براÙ? ذخÙ?رÙ? Ù?ردÙ? دادÙ?â??â??Ù?اÙ? Ù?Ù? Ù?اÙ?Ù? Ù?تÙ?Ù? Ù?Ù?رد Ù?Ù?از استØ?
4.7) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? بÙ?Ù?Ù?Ù? Ù?Ù? Ú?Ù? Ù?اربراÙ?Ø?â?? پاÙ?گاÙ? دادÙ?Ø?â?? Ù?Ù?اÙ?Ù? Ù? جداÙ?Ù?Ù? در سÙ?ستÙ?
تعرÙ?Ù? شدÙ? استØ?
4.8) Ú?را درخÙ?استÙ?اÙ? Ù?Ù? Ù?Ù?د اجرا Ù?Ù?â??Ø´Ù?Ù?د Ù?ا Ú?را از Ù?Ù?اÙ?Ù? Ù?ا استÙ?ادÙ? Ù?Ù?Ù?â??Ù?Ù?Ù?دØ?
4.9) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? Ù?ØÙ?Ù? بررسÙ? درخÙ?است را تÙ?سط بÙ?Ù?Ù?Ù?â??ساز درخÙ?استÙ?ا Ù?شاÙ?دÙ? Ù?Ù?Ù?Ø?
4.10) Ù?Ù?اÙ?Ù? R-treeâ?? Ú?Ù?ستØ?
4.11) بÙ?Ù?Ù?Ù? ساز تÙ?Ù?Ù?Ù?Ù? درخÙ?است Ú?Ù?ستØ? (Genetic Query Optimizer)
4.12) Ú?Ú¯Ù?Ù?Ù? از عبارات Ù?Ù?ظÙ? براÙ? جستجÙ? استÙ?ادÙ? Ù?Ù?Ù?Ø? Ú?Ú¯Ù?Ù?Ù? جستجÙ?Ù?Ù? اÙ?جاÙ? دÙ?Ù? Ù?Ù?
ØØ³Ø§Ø³ بÙ? Ù?تÙ? Ù?باشدØ? Ú?Ú¯Ù?Ù?Ù? براÙ? Ù?Ù? جستجÙ?Ù? غÙ?ر ØØ³Ø§Ø³ بÙ? Ù?تÙ? از Ù?Ù?اÙ?Ù? استÙ?ادÙ? Ù?Ù?Ù?Ø?
4.13) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? در Ù?Ù? درخÙ?است تشخÙ?ص دÙ?Ù? Ù?Ù? Ù?Ù? Ù?Ù?Ù?د NULLâ?? استØ?
4.14) تÙ?اÙ?ت بÙ?Ù? Ú¯Ù?Ù?Ù?â??Ù?اÙ? Ù?ختÙ?Ù? character Ú?Ù?ستØ?
4.15.1) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? Ù?Ù? Ù?Ù?Ù?د سرÙ?اÙ? Ù?ا اÙ?زاÙ?Ø´Ù? اÙ?جاد Ù?Ù?Ù?Ø?
4.15.2) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? Ù?Ù?دار Ù?Ù? درج سرÙ?اÙ?Ù? را بداÙ?Ù?Ø?
4.15.3) Ø¢Û?ا تÙ?ابع ()nextval Ù? ()currval Ù?Ù?جر بÙ? اÛ?جاد شراÛ?Ø· race براÛ? ساÛ?ر
کاربراÙ? Ù?Û? Ø´Ù?Ù?دØ?
4.15.4) Ú?را اعداد سرÛ?اÙ?Û? Ù?ربÙ?Ø· بÙ? تراکÙ?Ø´Ù?اÛ? abort شدÙ? Ù?جدداÙ? استÙ?ادÙ? Ù?Ù?Û? Ø´Ù?دØ?
Ú?را بÛ?Ù? اعداد سرÛ?اÙ?Û? Û?Ú© Ù?اصÙ?Ù? خاÙ?Û? اÛ?جاد Ù?Û? Ø´Ù?دØ?
4.16) OID Ù? TID Ú?Ù? Ù?ستÙ?دØ?
4.17) Ù?عÙ?Ù? بعضÙ? از ترÙ?Ù?ا Ù? Ù?Ù?Ù?اتÙ? Ù?Ù? در PostgreSQLâ?? استÙ?ادÙ? Ù?Ù?â??Ø´Ù?د Ú?Ù?ستØ?
4.18) Ú?را Ù?Ù? خطاÙ? "ERROR: Memory exhausted in AllocSetAlloc" Ù?Ù?â??Ú¯Ù?رÙ?Ø?
4.19) از Ù?جا تشخÙ?ص دÙ?Ù? Ù?Ù? Ù?Ù?راÙ?Ø´ Ù?ا Ù?سخÙ? PostgreSQLÙ?Ù? Ù?Ù? Ù?Ù? استÙ?ادÙ? Ù?Ù?â??Ù?Ù?Ù? Ú?Ù?ستØ?
4.20) Ú?را در ØÛ?Ù? اجراÛ? عÙ?Ù?Û?ات رÙ?Û? large-objectÙ?ا خطاÛ? "invalid large obj
descriptor"بÙ? Ù?جÙ?د Ù?Û? Ø¢Û?دØ?
4.21) Ú?Ú¯Ù?Ù?Ù? Ù?Ù? ستÙ?Ù? اÙ?جاد Ù?Ù?Ù? Ù?Ù? Ù?Ù?دار زÙ?اÙ? جارÙ? را بÙ? عÙ?Ù?اÙ? Ù?Ù?دار Ù¾Ù?Ø´â??Ù?رض داشتÙ?
باشدØ?
4.22) Ú?را زÙ?ر درخÙ?استÙ?اÙ?Ù? Ù?Ù? از IN استÙ?ادÙ? Ù?Ù?â??Ù?Ù?Ù?د Ù?Ù?د Ù?ستÙ?دØ?
4.23) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? Ù?Ù? اÙ?ØØ§Ù? خارجÙ? (outer join) اÙ?جاÙ? دÙ?Ù?Ø?
4.24) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ? درخÙ?استÙ?اÙ?Ù? از Ú?Ù?د پاÙ?گاÙ? دادÙ? تÙ?Ù?Ù?د Ù?ردØ?
4.25) Ú?Ú¯Ù?Ù?Ù? خرÙ?جÙ? Ù?Ù? تابع Ù?Ù?â??تÙ?اÙ?د Ú?Ù?د ردÙ?Ù? Ù?ا ستÙ?Ù? باشدØ?
4.26) در تÙ?ابع PL/PgSQL Ú?را Ù?Ù?Ù?â??تÙ?اÙ? با اطÙ?Ù?Ù?اÙ? جداÙ?Ù? Ù?Ù?Ù?ت را اÙ?جاد Ù?ا ØØ°Ù? Ù?ردØ?
4.27) Ú?Ù? گزÙ?Ù?Ù?â??Ù?اÙ?Ù? براÙ? تÙ?رار (replication) Ù?جÙ?د داردØ?
4.28) Ú?Ù? گزÙ?Ù?Ù?â??Ù?اÙ?Ù? براÙ? رÙ?زÙ?گارÙ? Ù?جÙ?د داردØ?
تÙ?سعÙ? PostgreSQL
5.1) Ù?Ù? Ù?Ù? تابع Ù?Ù?شتÙ?â??اÙ?. Ú?Ú¯Ù?Ù?Ù? Ø¢Ù? را در psql اجرا Ù?Ù?Ù?Ø? Ú?را با اجراÙ? Ø¢Ù? core
dump Ù?Ù?â??Ú¯Ù?رÙ?Ø?
5.2) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? در تÙ?Ù?Ù?د Ù?Ù?عâ??Ù?ا Ù? تÙ?ابع جدÙ?د Ù? جاÙ?ب براÙ? PostgreSQLâ?? Ù?Ù?Ù?ارÙ?
Ù? Ù?شارÙ?ت داشتÙ? باشÙ?.
5.3) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? Ù?Ù? تابع بÙ? زباÙ? C بÙ?Ù?Ù?سÙ? Ù?Ù? خرÙ?جÙ? Ø¢Ù? Ù?Ù? â??tuple (Ú?Ù?د تاÙ?Ù?)
باشدØ?
5.4) Ù?Ù? Ù?Ù? Ù?اÙ?Ù? Ù?Ù?بع را عÙ?ض Ù?ردÙ? اÙ? Ú?را در عÙ?Ù?Ù?ات Ù?اÙ?Ù¾Ù?Ù? Ù?جدد Ø¢Ù? تغÙ?Ù?ر دÙ?دÙ?
Ù?Ù?Ù?â??Ø´Ù?دØ?
سÙ?اÙ?ات عÙ?Ù?Ù?Ù?
1.1) PostgreSQL Ú?Ù?ست Ù? Ú?Ú¯Ù?Ù?Ù? Ø¢Ù? را باÙ?د تÙ?Ù?ظ Ù?ردØ?
PostgreSQL بÙ? صÙ?رت Post-Gres-Q-Lâ?? تÙ?Ù?ظ Ù?Ù?â??Ø´Ù?د. Ù?Ù? Ù?اÙ?Ù? صÙ?تÙ? در آدرس
http://www.postfresql.org/postgresql.mp3â;?? براÙ? Ù?ساÙ?Ù? Ù?Ù? Ù?اÙ?Ù?Ù?د تÙ?Ù?ظ صØÙ?Ø Ø±Ø§
بشÙ?Ù?Ù?د Ù?جÙ?د دارد.
PostgreSQL از رÙ?Ù? سÙ?ستÙ? Ù?دÙ?رÙ?ت پاÙ?گاÙ? دادÙ? POSTGRES تÙ?سعÙ? دادÙ? شدÙ? است (Ù?Ù?Ù?ز Ù?Ù?
بعضÙ? Ù?Ù?اÙ?ع براÙ? سادگÙ? بÙ? Ø¢Ù? Postgres Ú¯Ù?تÙ? Ù?Ù?â??Ø´Ù?د) Ù?Ù? Ù?Ù? Ù?Ù?Ù?Ù?Ù? تØÙ?Ù?Ù?اتÙ? از پاÙ?گاÙ?
دادÙ?â??Ù?اÙ? Ù?سÙ? بعد است. PostgreSQL Ù?Ù?اÙ? اÙ?Ú¯Ù?Ù? دادÙ? Ù?Ù?Ù? Ù? اÙ?Ù?اع دادÙ? را ØÙ?ظ Ù?ردÙ?
است Ù?Ù?Ù? زباÙ? PostQuel را با Ù?Ù? زÙ?رÙ?جÙ?Ù?عÙ? Ù¾Ù?شرÙ?تÙ? از SQL جاÙ?گزÙ?Ù? Ù?ردÙ? است.
PostgreSQL Ù?تÙ? باز بÙ?دÙ? Ù? Ù?تÙ? Ù?اÙ?Ù? Ø¢Ù? در دسترس است.
PostgreSQL تÙ?سط Ù?Ù? تÙ?Ù? برÙ?اÙ?Ù?â??Ù?Ù?Ù?س Ù?Ù? Ù?Ù?Ú¯Ù? در گرÙ?Ù? پست اÙ?Ù?ترÙ?Ù?Ù?Ù? برÙ?اÙ?Ù?â??Ù?Ù?Ù?ساÙ?
PostgreSQL عضÙ? Ù?ستÙ?دØ? اÙ?جاÙ? Ù?Ù?â??Ø´Ù?د. Ù?Ù?اÙ?Ù?Ú¯ Ù?Ù?Ù?دÙ? اصÙ?Ù? در ØØ§Ù? ØØ§Ø¶Ø± Marc G.
Fournierâ?? بÙ? آدرس scrappy(at)PostgreSQL(dot)org Ù?Ù?â??باشد. (براÙ? دÙ?دÙ? Ù?ØÙ?Ù? Ù?Ù?ØÙ? شدÙ? بÙ?
اÙ?Ù? تÙ?Ù? Ù?سÙ?ت 1.6 را ببÙ?Ù?Ù?د). اÙ?Ù? تÙ?Ù? در ØØ§Ø¶Ø± Ù?سئÙ?Ù?Ù?ت تÙ?اÙ? Ù?سائÙ? Ù?ربÙ?Ø· بÙ?
برÙ?اÙ?Ù?â??Ù?Ù?Ù?سÙ? PostgreSQL را بر عÙ?دÙ? دارد. اÙ?Ù? Ù?Ù? پرÙ?Ú?Ù? گرÙ?Ù?Ù? است Ù? ØªØØª Ù?Ù?ترÙ? Ù?Ù?Ú?
شرÙ?تÙ? Ù?Ù?ست. براÙ? اطÙ?اعات بÙ?شتر در Ù?Ù?رد اÙ?Ù? تÙ?Ù? بÙ? آدرس
http://www.PostgreSQL.org/docs/faqs/FAQ_DEV.html Ù?راجعÙ? Ù?Ù?Ù?د.
اÙ?Ù?Ù?Ù? Ù?سخÙ? PostgreSQLâ?? تÙ?سط Andrew Yu and Jolly Chen بÙ? Ù?جÙ?د Ø¢Ù?د. اÙ?راد بسÙ?ارÙ?
در تÙ?سعÙ? Ù? رÙ?ع اشÙ?اÙ? Ù? اÙ?تÙ?اÙ? Ø¢Ù? شرÙ?ت Ù?ردÙ?â??اÙ?د. Ù?تÙ? اصÙ?Ù? Postgres Ù?Ù? PostgreSQL
از رÙ?Ù? Ø¢Ù? Ù?Ù?شتÙ? شدÙ? استØ? تÙ?سط تعداد زÙ?ادÙ? داÙ?شجÙ?Ù? Ù?ارشÙ?اسÙ? ارشدÙ? داÙ?شجÙ?Ù?
Ù?ارشÙ?اسÙ? Ù? تÙ?Ù? برÙ?اÙ?Ù?â??Ù?Ù?Ù?سÙ? Ù?Ù? ØªØØª Ù?ظر پرÙ?Ù?سÙ?ر Michael Stonebrake در داÙ?شگاÙ?
برÙ?Ù?Ù?Ø?â??Ù?اÙ?Ù?Ù?رÙ?Ù?ا Ù?ار Ù?Ù?â??Ù?ردÙ?â??اÙ?د Ù?Ù?شتÙ? شدÙ? است.
Ù?اÙ? اصÙ?Ù? Ù?رÙ? اÙ?زار در داÙ?شگاÙ? برÙ?Ù?Ù? Postgresâ?? بÙ?د. در ساÙ? 1995 بعد از اضاÙ?Ù? شدÙ?
SQL Ù?اÙ? Ø¢Ù? بÙ? Postgres95 تغÙ?Ù?ر دادÙ? شد. در ساÙ? 1996 Ù?اÙ? Ø¢Ù? بÙ? PostgreSQL تغÙ?Ù?ر
دادÙ? شد.
1.2) Ù?Ù?اÙ?Ù?Ù? Ù?Ù¾Ù? راÙ?ت در Ù?Ù?رد PostgreSQL بÙ? Ú?Ù? صÙ?رت استØ?
PostgreSQL ØªØØª Ù?اÙ?Ù?Ù? Ù?Ù¾Ù? راÙ?ت زÙ?ر Ù?رار دارد:
PostgreSQL Data Base Management System
Portions copyright (c) 1996-2004, 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.
Ù?اÙ?Ù?Ù? باÙ?ا Ù?Ù?ساÙ?س BSD Ù?Ù? Ù?Ù? Ù?Ù?ساÙ?س Ù?Ù?اسÙ?Ù? براÙ? Ù?تÙ?â??Ù?اÙ? باز است Ù?Ù?â??باشد. Ù?Ù?Ú?
Ù?ØØ¯Ù?دÙ?تÙ? در Ù?Ù?رد Ù?ØÙ?Ù? استÙ?ادÙ? از Ù?تÙ? در Ø¢Ù? دÙ?دÙ? Ù?Ù?Ù?â??Ø´Ù?د. Ù?ا Ø¢Ù? را دÙ?ست دارÙ?Ù? Ù?
Ù?Ù?Ú? Ù?صدÙ? براÙ? تغÙ?Ù?ر Ø¢Ù? Ù?دارÙ?Ù?.
1.3) PostgreSQLâ?? رÙ?Ù? Ú?Ù? Ù?Ù?ع Ù?Ù?Ù?Ù?Ù?سÙ?اÙ?Ù? اجرا Ù?Ù?â??Ø´Ù?دØ?
در ØØ§Ù?ت Ù?Ù?Ù? PostgreSQL رÙ?Ù? Ù?ر Ù¾Ù?تÙ?رÙ? (سÙ?Ù?Ù?) سازگار با Ù?Ù?Ù?Ù?Ù?س اجرا Ù?Ù?â??Ø´Ù?د. Ù?Ù?ست
Ù¾Ù?تÙ?رÙ?Ù?اÙ?Ù? Ù?Ù? تاÙ?Ù?Ù?Ù? PostgreSQLâ?? رÙ?Ù? Ø¢Ù?Ù?ا Ù?صب Ù? تست شدÙ? است درÙ?سÙ?ت دستÙ?راÙ?عÙ?Ù?Ù?اÙ?
Ù?صب Ø¢Ù?دÙ? است.
1.4) رÙ?Ù? Ú?Ù? Ù?ØÙ?Ø·Ù?اÙ? غÙ?ر Ù?Ù?Ù?Ù?Ù?سÙ? Ù?Ù?â??تÙ?اÙ? Ø¢Ù? را اجرا Ù?ردØ?
Client
Ù?Ù?â??تÙ?اÙ? psql, Ù?تابخاÙ?Ù? libpq Ù? ساÙ?ر Ù?اسطÙ?ا Ù? برÙ?اÙ?Ù?â??Ù?اÙ? Ù?اربردÙ? را Ø·Ù?رÙ? Ù?اÙ?Ù¾Ù?Ù?
Ù?رد Ù?Ù? رÙ?Ù? Ù?ØÙ?Ø·Ù?اÙ? Ù?Ù?Ù?دÙ?ز Ù?Ù?ز اجرا Ø´Ù?Ù?د. در اÙ?Ù? ØØ§Ù?ت Client رÙ?Ù? Ù?Ù?Ù?دÙ?ز اجرا
Ù?Ù?â??Ø´Ù?د Ù? از طربÙ? شبÙ?Ù? Ù? پرÙ?تÙ?Ù? TCP/IP با Ù?Ù? سرÙ?ر Ù?Ù? رÙ?Ù? Ù?Ù? Ù¾Ù?تÙ?رÙ? Ù?Ù?Ù?Ù?Ù?س در ØØ§Ù?
اجراست ارتباط برÙ?رار Ù?Ù?â??Ù?Ù?د.Ù?Ù? Ù?اÙ?Ù? win32.mak Ù?Ù?راÙ? با Ù?دÙ?اÙ? PostgreSQL Ù?جÙ?د
دارد Ù?Ù? براÙ? Ù?اÙ?Ù¾Ù?Ù? Ù?ردÙ? Ù?تابخاÙ?Ù? libpq Ù? برÙ?اÙ?Ù? psql Ù?Ù?â??باشد. Pâ??ostgreSQLâ??
Ù?Ù?Ú?Ù?Ù?Ù? اÙ?Ù?اÙ? ارتباط بÙ? صÙ?رت ODBCâ?? را Ù?Ù?ز دارد.
Server
با استÙ?ادÙ? از Cygwinâ?? Ù? Ù?تابخاÙ?Ù? Cygnus Ù?Ù?â??تÙ?اÙ? پاÙ?گاÙ? دادÙ? را رÙ?Ù? Ù?Ù?Ù?دÙ?ز NT Ù?
Ù?ا Win2K اجرا Ù?رد.براÙ? دÙ?دÙ? اطÙ?اعات بÙ?شتر Ù?اÙ?Ù? pgsql/doc/FAQ_MSWIN â??را Ù?Ù? بÙ?Ù?راÙ?
تÙ?زبعâ??Ù?اÙ? PostgreSQL Ø¢Ù?دÙ? است ببÙ?Ù?Ù?د Ù? Ù?ا اÙ?Ù?Ù?Ù? بÙ? اÙ?Ù? صÙ?ØÙ?
http://www.PostgreSQL.org/docs/faqs/text/FAQ_MSWIN Ù?راجعÙ? Ù?Ù?Ù?د.
در ØØ§Ù? ØØ§Ø¶Ø± Ù?Ù? عÙ?Ù?Ù?ات اÙ?تÙ?اÙ? PostgreSQL بÙ? رÙ?Ù? سÙ?Ù?Ù?اÙ? Win NT/2000/XP در جرÙ?اÙ?
است. براÙ? دÙ?دÙ? Ù?ضعÙ?ت اÙ?Ù? پرÙ?Ú?Ù? بÙ? ساÙ?تâ??Ù?اÙ?
http://momjian.postgresql.org/main/writings/pgsql/win32.htm Ù?
http://techdocs.postgresql.org/guides/Windows Ù?راجعÙ? Ù?Ù?Ù?د.
Ù?Ù?Ú?Ù?Ù?Ù? Ù?Ù? عÙ?Ù?Ù?ات اÙ?تÙ?اÙ? بر رÙ?Ù? Novell Netware 6 Ù?Ù?ز در ØØ§Ù? اÙ?جاÙ? است Ù?Ù? در ساÙ?ت
http://forge.novell.com Ù?Ù?â??تÙ?اÙ?Ù?د اطÙ?اعات بÙ?شتر را ببÙ?Ù?Ù?د.
1.5) PostgreSQL را از Ù?جا Ù?Ù?â??تÙ?اÙ?Ù? بگÙ?رÙ?Ø?
PostgreSQLâ?? را از ساÙ?ت اصÙ?Ù? Ø¢Ù? ftp://ftp.PostgreSQL.org/pub Ù?Ù?â??تÙ?اÙ?Ù?د بگÙ?رÙ?د.
در صÙ?ØÙ? اصÙ?Ù? ساÙ?ت Ù?Ù?ست ساÙ?ر آدرسÙ?اÙ?Ù? Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù?د PostgreSQLâ?? را از Ø¢Ù?Ù?ا بگÙ?رÙ?د
Ø¢Ù?دÙ? است.
1.6) از Ù?جا خدÙ?ات پشتÙ?باÙ?Ù? بگÙ?رÙ?Ø?
گرÙ?Ù? پستÙ? اصÙ?Ù? pgsql-general(at)PostgreSQL(dot)org Ù?Ù?â??باشد. اÙ?Ù? گرÙ?Ù? براÙ? Ø¨ØØ« در Ù?Ù?رد
Ù?Ù?ضÙ?عات Ù?ختÙ?Ù? در زÙ?Ù?Ù?Ù? PostgreSQL است. براÙ? عضÙ? شدÙ? در اÙ?Ù? گرÙ?Ù? پستÙ? Ù?Ù? Ù?اÙ?Ù?
اÙ?Ù?ترÙ?Ù?Ù?Ù?Ù? بÙ? آدرس گرÙ?Ù? با Ù?ØØªÙ?Ù?اتÛ? Ù?Ù? در اداÙ?Ù? Ø¢Ù?دÙ? است ارساÙ? Ù?Ù?Ù?د. در Ù?سÙ?ت
Subject Ú?Ù?زÙ? Ù?Ù?Ù?Ù?سÙ?د.
subscribe
end
آدرس گرÙ?Ù?: pgsql-general-request(at)PostgreSQL(dot)org
Ù?Ù?Ú?Ù?Ù?Ù? Ù?Ù? گرÙ?Ù? پستÙ? Ù?Ù? بÙ? صÙ?رت ارساÙ? Ú?Ù?Ù?دÙ? Ù¾Ù?اÙ?Ù?ا Ù?جÙ?د دارد. براÙ? عضÙ? شدÙ? در اÙ?Ù?
گرÙ?Ù? Ù?Ù? Ù?اÙ?Ù? با Ù?ØØªÙ?Ù?ات زÙ?ر بÙ? اÛ?Ù? آدرس ارساÙ? Ù?Ù?Ù?د.
pgsql-general-digest-request(at)PostgreSQL(dot)org
subscribe
end
در اÙ?Ù? گرÙ?Ù? Ù?ر Ù?Ù?Ù?ع ØØ¬Ù? Ù?اÙ?Ù?â??Ù?ا بÙ? 30 Ù?Ù?Ù?Ù?باÙ?ت رسÙ?د براÙ? تÙ?اÙ? اعضاء ارساÙ?
Ù?Ù?â??Ø´Ù?د.
گرÙ?Ù? پستÙ? بررسÙ? اÙ?Ø´Ù?اÙ?ات Ù?Ù? Ù?جÙ?د دارد. براÙ? عضÙ? شدÙ? در اÙ?Ù? گرÙ?Ù? Ù?Ù? Ù?اÙ?Ù? با
Ù?ØØªÙ?Ù?ات زÙ?ر بÙ? pgsql-bugs-request(at)PostgreSQL(dot)org ارساÙ? Ù?Ù?Ù?د.
subscribe
end
گرÙ?Ù? پستÙ? Ù?خصÙ?ص تÙ?سعÙ? دÙ?Ù?دگاÙ? (برÙ?اÙ?Ù?â??Ù?Ù?Ù?ساÙ?) Ù?Ù?ز Ù?جÙ?ددارد. براÙ? عضÙ?Ù?ت در اÙ?Ù?
گرÙ?Ù? Ù?Ù? Ù?اÙ?Ù? بÙ? آدرس زÙ?ر با Ù?ØØªÙ?Ù?ات Ù?شخص شدÙ? ارساÙ? Ù?Ù?Ù?د.
pgsql-hackers-request(at)PostgreSQL(dot)org
subscribe
end
گرÙ?Ù?Ù?اÙ? پستÙ? دÙ?گرÙ? Ù?Ù?ز در زÙ?Ù?Ù?Ù? PostgreSQLâ?? Ù?جÙ?د دارد Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù?د در ساÙ?ت
http://www.postgresql.org ببÙ?Ù?Ù?د.
Ù?Ù?Ú?Ù?Ù?Ù? Ù?Ù? Ù?اÙ?اÙ? IRC رÙ?Ù? Freenode Ù? EFNet بÙ?اÙ? PostgreSQL# Ù?جÙ?د دارد. Ø´Ù?ا
Ù?Ù?â??تÙ?اÙ?Ù?د از Ù?رÙ?اÙ? Ù?Ù?Ù?Ù?Ù?سÙ? irc -c '#PostgreSQL' "$USER" irc.phoenix.net. Ù?ا irc
-c '#PostgreSQL' "$USER" irc.freenode.net استÙ?ادÙ? Ù?Ù?Ù?د.
Ù?Ù?ست شرÙ?تÙ?اÙ?Ù? Ù?Ù? از طرÙ?Ù? Ø¢Ù?Ù?ا Ù?Ù?â??تÙ?اÙ?Ù?د خدÙ?ات پشتÙ?باÙ?Ù? تجارÙ? در زÙ?Ù?Ù?Ù? PostgreSQL
درÙ?اÙ?ت Ù?Ù?Ù?د در اÙ?Ù? آدرس http://techdocs.postgresql.org/companies.php Ù?Ù?جÙ?د است.
1.7) آخرÙ?Ù? Ù?سخÙ? اعÙ?اÙ? شدÙ? Ú?Ù?ستØ?
آخرÙ?Ù? Ù?سخÙ? PostgreSQLâ?? Ù?Ù? Ù?جÙ?د دارد 7.4.3 است.
Ù?دÙ? Ù?ا Ø¢Ù? است Ù?Ù? Ù?ر 6 Ù?اÙ? تا 8 Ù?اÙ? Ù?Ù? Ù?سخÙ? جدÙ?د ارائÙ? Ø´Ù?د.
1.8) Ú?Ù? Ù?ستÙ?دات Ù? راÙ?Ù?Ù?ائÙ?Ù?اÙ?Ù? Ù?جÙ?د دارÙ?دØ?
Ú?Ù?دÙ?Ù? Ù?تابÚ?Ù? Ù? صÙ?ØØ§Øª راÙ?Ù?Ù?ا Ù? Ù?ثاÙ?Ù?اÙ? Ù?Ù?Ú?Ù? Ù?Ù?راÙ? با Ù?تÙ? اصÙ?Ù? PostgreSQLâ?? در شاخÙ?
doc Ù?جÙ?د دارد. براÙ? دÙ?دÙ? صÙ?ØØ§Øª راÙ?Ù?Ù?ا Ù?Ù?â??تÙ?اÙ?Ù?د بÙ? ساÙ?ت
http://www.PostgreSQL.org/docs Ù?Ù?ز Ù?راجعÙ? Ù?Ù?اÙ?Ù?د.
دÙ? Ù?تاب در زÙ?Ù?Ù?Ù? PostgreSQLâ?? در آدرسâ??Ù?اÙ?
http://www.PostgreSQL.org/docs/awbook.htm Ù? http://www.commandprompt.com/ppbook
Ù?جÙ?د دارد. Ù?Ù?ستÙ? از Ù?تابÙ?اÙ?Ù? Ù?Ù? Ù?ابÙ? خرÙ?د است در آدرس
http://techdocs.PostgreSQL.org/techdocs/bookreviews.php Ù?جÙ?د دارد. Ù?Ù?Ú?Ù?Ù?Ù? Ù?Ù?ستÙ?
از Ù?Ù?اÙ?ات Ù?Ù?Ù? در Ù?Ù?رد PostgreSQL در آدرس http://techdocs.PostgreSQL.org Ù?جÙ?د
دارد.
برÙ?اÙ?Ù? psql Ù?Ù? دستÙ?ر d\ دارد Ù?Ù? اطÙ?اعاتÙ? در Ù?Ù?رد اÙ?Ù?اع دادÙ?â??Ù?اÙ? Ù?ابÙ? تعرÙ?Ù? Ù?
عÙ?Ù?گرâ??Ù?ا Ù? تÙ?ابع Ù? ... بÙ? Ù?ا Ù?شاÙ? Ù?Ù?â??دÙ?د. در ساÙ?ت اصÙ?Ù? Ù?ا اطÙ?اعات بÙ?شترÙ? را
Ù?Ù?â??تÙ?اÙ?Ù?د Ù¾Ù?دا Ù?Ù?Ù?د.
1.9) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? ازاشÙ?اÙ?ات Ø´Ù?اختÙ? شدÙ? Ù? Ù?ا اÙ?Ù?اÙ?اتÙ? Ù?Ù? در اÙ?Ù? پاÙ?گاÙ? دادÙ?
Ù?جÙ?د Ù?دارد Ù?Ø·Ù?ع Ø´Ù?Ù?Ø?
PostgreSQL Ù?Ù? زÙ?ر Ù?جÙ?Ù?عÙ? Ù¾Ù?شرÙ?تÙ? از SQL-92 را پشتÙ?باÙ?Ù? Ù?Ù?â??Ù?Ù?د. در Ù?Ù?ست TODO
اÙ?Ø´Ù?اÙ?ات Ø´Ù?اختÙ? شدÙ? Ù?ا اÙ?Ù?اÙ?اتÙ? Ù?Ù? Ù?جÙ?د Ù?دارد Ù? Ù?ا برÙ?اÙ?Ù?â??â??Ù?اÙ? Ø¢Ù?Ù?دÙ? Ø¢Ù?دÙ? است.
1.10) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? زباÙ? SQL را Ù?اد بگÙ?رÙ?Ø?
Ù?تاب PostgreSQL در آدرس SQL http://www.PostgreSQL.org/docs/awbook.html â??را Ø¢Ù?Ù?زش
Ù?Ù?â??دÙ?د. Ù?Ù?Ú?Ù?Ù?Ù? Ù?Ù? Ù?تاب در آدرس http://www.commandprompt.com/ppbook Ù?جÙ?د دارد. Ù?Ù?
راÙ?Ù?Ù?اÙ? Ø®Ù?Ù?Ù? Ø®Ù?ب Ù?Ù? در ساÙ?تâ??Ù?اÙ?
http://www.intermedia.net/support/sql/sqltut.shtm Ù?
http://ourworld.compuserve.com/homepages/graeme_birchall/HTM_COOK.HTM Ù?
http://sqlcourse.com در Ù?Ù?رد SQL Ù?جÙ?د دارد.
Ù?تاب دÙ?گرÙ? Ù?Ù? Ù?Ù?â??تÙ?اÙ? براÙ? Ù?ادگÙ?رÙ? SQL از Ø¢Ù? استÙ?ادÙ? Ù?رد Ù?تاب "SQL را در 21 رÙ?ز
Ù?اد بگÙ?رÙ?دØ?â?? Ù?Ù?راÙ?Ø´ دÙ?Ù?" در ساÙ?ت http://members.tripod.com/er4ebus/sql/index.htm
Ù?Ù?â??باشد.
تعداد زÙ?ادÙ? از Ù?اربراÙ? Ù?تاب The Practical SQL را ترجÙ?Ø Ù?Ù?â??دÙ?Ù?د. Ù?تاب دÙ?گر The
Complete Refrence SQL اÙ?تشارات McGraw-Hill Ù?Ù?â??باشد.
1.11) Ø¢Ù?ا PostgreSQL Ù?Ø´Ù?Ù? Y2Kâ?? دارد Ù?ا Ø®Ù?رØ?
Ø®Ù?رØ?â??PostgreSQLâ?? با تارÙ?Ø®â??Ù?اÙ? Ù?بÙ? Ù? بعد از 2000 Ù?Ø´Ù?Ù?Ù? Ù?دارد.
1.12) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? بÙ? تÙ?Ù? برÙ?اÙ?Ù? Ù?Ù?Ù?س PostgreSQL Ù?Ù?ØÙ? Ø´Ù?Ù?Ø?
ابتداØ?â??آخرÙ?Ù? سÙ?رس را دÙ?Ù?Ù?Ù?د Ù?ردÙ? Ù? Ù?ستÙ?دات Ù?ربÙ?Ø· بÙ? برÙ?اÙ?Ù?â??Ù?Ù?Ù?سÙ? PostgreSQL را
در ساÙ?ت Ù?طاÙ?عÙ? Ù?Ù?Ù?د. سپس بÙ? گرÙ?Ù?Ù?اÙ? پستÙ? â?? pgsql-patches Ù? pgsql-hackers عضÙ?
Ø´Ù?Ù?د. در Ù?رØÙ?Ù? آخر Ù?صÙ?Ù?â??Ù?اÙ? با Ù?Ù?Ù?Ù?ت باÙ?ا را بÙ? pgsql-patches ارساÙ? Ù?Ù?Ù?د.
تعداد زÙ?ادÙ? از برÙ?اÙ?Ù?â??Ù?Ù?Ù?ساÙ? Ù?جÙ?د دارÙ?د Ù?Ù? اÙ?تÙ?از اÙ?جاÙ? تغÙ?Ù?رات در cvsâ?? را
دارÙ?د. Ù?ر Ù?داÙ? از Ø¢Ù?Ù?ا تعداد زÙ?ادÙ? Ù?صÙ?Ù?â??â?? با Ù?Ù?Ù?Ù?ت باÙ?ا بÙ? گرÙ?Ù? ارساÙ? Ù?ردÙ?â??اÙ?د
Ù?Ù? اعتÙ?اد گرداÙ?Ù?دگاÙ? PostgreSQL را بÙ? دست Ø¢Ù?ردÙ?â??اÙ?د.
1.13) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? Ù?Ù? اÙ?Ø´Ù?اÙ? را بÙ? گرÙ?Ù? برÙ?اÙ?Ù? Ù?Ù?Ù?س اعÙ?اÙ? Ù?Ù?Ù?Ø?
Ù?Ø·Ù?اÙ? صÙ?ØÙ? Ù?ربÙ?Ø· بÙ? اÙ?Ø´Ù?اÙ?ات PostgreSQL را در ساÙ?ت
http://www.PostgreSQL.org/bugs/bugs.php Ù?شاÙ?دÙ?â?? Ù?Ù?Ù?د. در اÙ?Ù? ساÙ?ت Ù?ØÙ?Ù? گزارش Ù?
ارساÙ? Ù?Ù? اشÙ?اÙ? تÙ?ضÙ?Ø Ø¯Ø§Ø¯Ù? شدÙ? است.
Ù?Ù?Ú?Ù?Ù?Ù? براÙ? دÙ?دÙ? Ù?سخÙ?â??Ù?اÙ? جدÙ?دتر PostgreSQL Ù? Ù?ا Ù?جÙ?د Ù?Ù? Ù?صÙ?Ù? جدÙ?د از ساÙ?ت
ftp://ftp.PostgreSQL.org/pub بازدÙ?د Ù?Ù?Ù?د.
1.14) Ù?ضعÙ?ت PostgreSQLâ?? در Ù?Ù?اÙ?سÙ? با ساÙ?ر DBMSÙ?ا بÙ? Ú?Ù? صÙ?رت استØ?
راÙ?Ù?اÙ? Ù?ختÙ?Ù?Ù? براÙ? اÙ?دازÙ?â??Ú¯Ù?رÙ? Ù? Ù?Ù?اÙ?سÙ? Ù?رÙ?â??اÙ?زارÙ?ا Ù?جÙ?د دارد Ù?Ù? عبارتÙ?د از
اÙ?Ù?اÙ?اتØ? Ù?اراÙ?Ù?Ø? Ù?ابÙ?Ù?ت اعتÙ?ادØ? پشتÙ?باÙ?Ù? Ù? Ù?Ù?Ù?ت
اÙ?Ù?اÙ?ات
PostgreSQL بÙ?شتر اÙ?Ù?اÙ?ات Ù?Ù?جÙ?د در سÙ?ستÙ?â??Ù?اÙ? پاÙ?گاÙ? دادÙ? تجارÙ? بزرگ Ù?ظÙ?ر
transactions, subselets, triggers, views, foreign key referential integrity
Ù? sophisticated lockingâ?? را دارد. در PostgreSQLâ??â?? اÙ?Ù?اÙ?اتÙ? Ù?جÙ?د دارد Ù?Ù?
پاÙ?گاÙ?Ù?اÙ? دادÙ? دÙ?گر Ø¢Ù? را Ù?دارÙ?د Ù?ظÙ?ر user-defined typesâ??Ù? Inheritanceâ??Ù?
rulesâ??Ù? multi-version concurrency control
Ù?اراÙ?Ù?
Ù?اراÙ?Ù? PostgreSQL در ØØ¯ بÙ?Ù?Ù? سÙ?ستÙ?â??Ù?اÙ? تجارÙ? Ù? Ù?تÙ? باز است. در بعضÙ?
Ù?Ù?ارد سرÙ?عتر Ù? در بعضÙ? Ù?Ù?ارد از Ø¢Ù?Ù?ا Ù?Ù?دتر است. در Ù?Ù?اÙ?سÙ? با MySQL براÙ?
Ù?اربراÙ? بÙ?شتر Ù? درخÙ?استâ??Ù?اÙ? Ù¾Ù?Ú?Ù?دÙ? Ù? بار زÙ?اد Ø®Ù?اÙ?دÙ?/Ù?Ù?شتÙ? سرÙ?عتر است. در
درخÙ?استâ??Ù?اÙ? سادÙ? SELECTâ?? از MySQL Ù?Ù?دتر است. اÙ?بتÙ? MySQL Ø®Ù?Ù?Ù? از اÙ?Ù?اÙ?ات
PostgreSQL Ù?Ù? در باÙ?ا بÙ? Ø¢Ù? اشارÙ? شد را Ù?دارد. Ù?دÙ? اصÙ?Ù? Ù?ا اÙ?Ù?اÙ?ات Ù? Ù?ابÙ?Ù?ت
اعتÙ?اد باÙ?است در ضÙ?Ù? Ø¢Ù?Ù?Ù? تÙ?اش Ù?Ù?â??Ù?Ù?Ù?Ù? تا Ù?اراÙ?Ù? Ø¢Ù? Ù?Ù?ز بÙ?بÙ?د Ù?ابد. در آدرس
http://openacs.org/philosophy/why-not-mysql.html Ù?Ù? Ù?Ù?اÙ?سÙ? جاÙ?ب بÙ?Ù? MySQL Ù?
PostgreSQL Ù?جÙ?د دارد. از طرÙ? دÙ?گر MySQLâ?? Ù?Ù? شرÙ?ت است Ù?Ù? Ù?ØØµÙ?Ù? Ø®Ù?د را بÙ? صÙ?رت
Ù?تÙ? باز ارائÙ? Ù?Ù?â??Ù?Ù?د Ù?Ù?Ù? براÙ? Ù?رÙ?â??اÙ?زار غÙ?ر Ù?تÙ? باز Ø®Ù?د Ø§ØØªÙ?اج بÙ? Ù?Ù?ساÙ?س تجارÙ?
دارد بر Ø®Ù?اÙ? PostgreSQL Ù?Ù? Ù?Ù? گرÙ?Ù? Ù?اÙ?Ù?اÙ? Ù?تÙ? باز Ù?ستÙ?د.
Ù?ابÙ?Ù?ت اطÙ?Ù?Ù?اÙ?
Ù?ا Ù?Ù?ر Ù?Ù?â??Ù?Ù?Ù?Ù? Ù?Ù? Ù?Ù? سÙ?ستÙ? پاÙ?گاÙ? دادÙ?â??اÙ? Ù?Ù? Ù?Ø·Ù?ئÙ? Ù?باشد ارزشÙ? Ù?دارد. Ù?ا
تÙ?اÙ? تÙ?اشÙ?اÙ? را براÙ? ارائÙ? Ù?دÙ?اÙ? پاÙ?دارÙ? Ù?Ù? بÙ? Ø®Ù?بÙ? تست شدÙ? باشÙ?د Ù? Ù?Ù?ترÙ?Ù?
اÙ?Ø´Ù?اÙ?ات را داشتÙ? باشÙ?د Ù?Ù?â??Ù?Ù?Ù?Ù?. Ù?ر Ù?سخÙ? جدÙ?دÙ? Ù?Ù? ارائÙ? Ù?Ù?â??Ø´Ù?د ØØ¯Ø§Ù?Ù? Ù?Ù? Ù?اÙ?
را در Ù?رØÙ?Ù? تست بتا Ù?Ù?â??گذراÙ?د. Ù?ا بر اÙ?Ù? باÙ?ر Ù?ستÙ?Ù? Ù?Ù? Ù?ابÙ?Ù?ت اطÙ?Ù?Ù?اÙ?
PostgreSQLâ?? در Ù?Ù?اÙ?سÙ? با ساÙ?ر سÙ?ستÙ?â??Ù?اÙ? پاÙ?گاÙ? دادÙ? Ù?ابÙ? تÙ?جÙ? است Ù?
Ù?سخÙ?â??Ù?اÙ?Ù? Ù?Ù? تاÙ?Ù?Ù?Ù? ارائÙ? شدÙ? است Ù?شاÙ? Ù?Ù?â??دÙ?د Ù?Ù? Ù?ا تÙ?اÙ?اÙ?Ù? ارائÙ? Ù?Ù? سÙ?ستÙ?
Ù?Ù?Ù? Ù? Ù?ØÙ?Ù? Ù? Ù?Ø·Ù?ئÙ? را Ù?Ù? Ø¢Ù?ادÙ? بÙ?رÙ?â??بردارÙ? است دارÙ?Ù?.
پشتÙ?باÙ?Ù?
گرÙ?Ù?Ù?اÙ? پستÙ? Ù?ا اÙ?Ù?اÙ? ارتباط Ù? تÙ?اس بÙ? گرÙ?Ù? بزرگÙ? از برÙ?اÙ?Ù? Ù?Ù?Ù?ساÙ? Ù? Ù?اربراÙ?
را Ù?Ù?â??دÙ?د Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù?د در ØÙ? Ù?Ø´Ù?Ù?ات بÙ? دÙ?گراÙ? Ù?Ù?Ù? Ù?Ù?Ù?د. دسترسÙ? Ù?ستÙ?Ù?Ù? بÙ?
برÙ?اÙ?Ù?â??Ù?Ù?Ù?ساÙ? Ù? گرÙ?Ù?Ù?اÙ? Ù?اربراÙ? Ù? راÙ?Ù?Ù?اÙ?ا Ù? Ù?داصÙ?Ù? باعث Ù?Ù?â??Ø´Ù?د Ù?Ù? پشتÙ?باÙ?Ù?
PostgreSQL Ù?سبت بÙ? ساÙ?ر پاÙ?گاÙ?Ù?اÙ? دادÙ? بÙ? Ù?ØÙ? بÙ?ترÙ? اÙ?جاÙ? Ø´Ù?د. Ù?Ù?Ú?Ù?Ù?Ù? اÙ?Ù?اÙ?
ارائÙ? خدÙ?ات پشتÙ?باÙ?Ù? بÙ? صÙ?رت تجارÙ? Ù?Ù?ز Ù?جÙ?د دارد. براÙ? دÙ?دÙ? اطÙ?اعات بÙ?شتر بÙ?
FAQ section 1.6 Ù?راجعÙ? Ù?Ù?Ù?د.
Ù?Ù?Ù?ت
Ù?Ù? براÙ? استÙ?ادÙ? تجارÙ? Ù? Ù?Ù? غÙ?ر تجارÙ? Ù?Ù?Ú? Ù?زÙ?Ù?Ù?â??اÙ? Ù?باÙ?د پرداخت Ø´Ù?د. Ù?Ù?Ú?
Ù?ØØ¯Ù?دÙ?تÙ? براÙ? اÙ?جاÙ? تغÙ?Ù?رات در PostgreSQL تÙ?سط استÙ?ادÙ? Ù?Ù?Ù?دگاÙ? Ù?جÙ?د Ù?دارد بÙ?
جز Ù?Ù?اردÙ? Ù?Ù? در Ù?Ù?ساÙ?س BSD بÙ? Ø¢Ù? اشارÙ? شدÙ? است.
1.15) Ù?Ù? Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? از Ù?ظر Ù?اÙ?Ù? بÙ? PostgreSQL Ù?Ù?Ù? Ù?Ù?Ù?Ø?
PostgreSQL داراÙ? Ù?Ù? ساختار تشÙ?Ù?Ù?اتÙ? درجÙ? اÙ?Ù? است Ù?Ù? Ø¢Ù? را Ù?دÙ?Ù?Ù? Marc Fournierâ??
است Ù?Ù? اÙ?Ù? ساختار را اÙ?جاد Ù?ردÙ? است.
Ù?Ù?Ù?Ù?ت Ù?Ù? ساختار براÙ? Ù?Ù? پرÙ?Ú?Ù? Ù?تÙ? باز بسÙ?ار اÙ?Ù?Ù?ت دارد. Ù?Ù? ساختار Ø®Ù?ب Ù?Ù?â??تÙ?اÙ?د
Ù?اÙ?ع از ØÙ?ادثÙ? Ø´Ù?د Ù?Ù? در ØØ±Ù?ت رÙ?بÙ?â??جÙ?Ù?Ù? پرÙ?Ú?Ù? Ø®Ù?Ù?Ù? Ù?ارد Ù?Ù?â??Ù?Ù?Ù?د.
اÙ?بتÙ? اÙ?Ù? ساختار تشÙ?Ù?Ù?اتÙ? ارزاÙ? Ù?Ù?ست. Ù?زÙ?Ù?Ù?â??Ù?اÙ? ثابت Ù?اÙ?اÙ?Ù? Ù? رÙ?زÙ?رÙ? براÙ?
Ù?Ú¯Ù?دارÙ? Ù? ØÙ?ظ اÙ?Ù? ساختار Ù?Ù?رد Ù?Ù?از است. اگر Ø´Ù?ا Ù?ا شرÙ?ت Ø´Ù?ا Ù?اÙ?Ù? است Ù?Ù? از Ù?ظر
Ù?اÙ?Ù? بÙ? اÙ?Ù? ØØ±Ù?ت Ù?Ù?Ù? Ù?Ù?د Ù?Ø·Ù?اÙ? بÙ? ساÙ?ت http://store.pgsql.com/shopping Ù?راجعÙ?
Ù?ردÙ? Ù? Ù?Ù?Ù? Ø®Ù?د را اÙ?دا Ù?Ù?Ù?د.
Ù?ر Ú?Ù?د در صÙ?ØÙ? اصÙ?Ù? عبارت PostgreSQL,Incâ?? ذÙ?ر شدÙ? است Ù?Ù?Ù? Ù?شارÙ?ت عÙ?دتاÙ? براÙ?
پشتÙ?باÙ?Ù? از پرÙ?Ú?Ù? PostgreSQLâ?? Ù?Ù? باشد Ù? Ù?Ù? براÙ? Ù?Ù? شرÙ?ت Ù?شخص. اگر ترجÙ?Ø Ù?Ù?â??دÙ?Ù?د
Ù?Ù?â??تÙ?اÙ?Ù?د Ù?Ù? Ú?Ù? بÙ? آدرس Ù?شخص شدÙ? ارساÙ? Ù?Ù?Ù?د.
اگر Ù?Ù? استÙ?ادÙ? Ù?Ù?Ù?Ù? از PostgreSQL سراغ دارÙ?د Ù?Ø·Ù?اÙ? Ø¢Ù? را بÙ? ساÙ?ت
http://advocacy.postgresql.org گزارش دÙ?Ù?د.
سÙ?اÙ?ات Ù?ربÙ?Ø· بÙ? استÙ?ادÙ? از پاÙ?گاÙ? دادÙ?
2.1) Ø¢Ù?ا Ù?Ù?Ú? دراÙ?Ù?ر ODBCâ?? براÙ? PostgreSQL Ù?جÙ?د داردØ?
دÙ? دراÙ?Ù?ر ODBC بÙ?اÙ?Ù?اÙ? psqlODBCâ?? Ù? OpenLink براÙ? PostgreSQLâ?? Ù?جÙ?د دارد.
براÙ? گرÙ?تÙ? psqlODBC بÙ? ساÙ?ت
http://gborg.postgresql.org/project/psqlodbc/projdisplay.php Ù?راجعÙ? Ù?Ù?Ù?د.
OpenLlink را از اÙ?Ù? ساÙ?ت http://www.openlinksw.com Ù?Ù?â??تÙ?اÙ?Ù?د بگÙ?رÙ?د. اÙ?Ù? دراÙ?Ù?ر
با Ù?رÙ?â??اÙ?زارÙ?اÙ? Ù?ختÙ?Ù? ODBC Ù?ار Ù?Ù?â??Ù?Ù?د بÙ?ابراÙ?Ù? Ø´Ù?ا Ù?ادر Ø®Ù?اÙ?Ù?د بÙ?د با استÙ?ادÙ? از
OpenLink رÙ?Ù? اÙ?ثر سÙ?Ù?â??Ù?اÙ?Ù? Ù?Ù? Ù?رÙ?â??اÙ?زارODBCâ??دارÙ?د بدÙ?Ù? Ù?Ø´Ù?Ù? بÙ? PostgreSQL Ù?Ù?ز
Ù?تصÙ? Ø´Ù?Ù?د.
اÙ?Ù? Ù?ØØµÙ?Ù? بÙ? Ù?ساÙ?Ù? Ù?Ù? Ø§ØØªÙ?اج بÙ? خدÙ?ات پشتÙ?باÙ?Ù? تجارÙ? دارÙ?د Ù?رÙ?ختÙ? Ù?Ù?â??Ø´Ù?د. Ù?Ù?Ù?
Ù?سخÙ? آزاد اÙ?Ù? Ù?رÙ?â??اÙ?زار Ù?Ù?Ù?Ø´Ù? در درسترس Ù?Ù?â??باشد. براÙ? Ù?سب اطÙ?اعات بÙ?شتر سÙ?اÙ?ات
Ø®Ù?د را بÙ? آدرس postgres95(at)openlink(dot)co(dot)uk â??ارساÙ? Ù?Ù?اÙ?Ù?د.
2.2) Ú?Ù? ابزارÙ?اÙ?Ù? براÙ? استÙ?ادÙ? از PostgreSQLâ?? با صÙ?ØØ§Øª Ù?ب Ù?جÙ?د داردØ?
در ساÙ?ت http://www.webreview.com براÙ? استÙ?ادÙ? از PostgreSQLâ?? در صÙ?ØØ§Øª Ù?ب
راÙ?Ù?Ù?اÙ?Ù?Ù?اÙ? Ø®Ù?بÙ? Ù?جÙ?د دارد.
براÙ? ترÙ?Ù?ب Ù? استÙ?ادÙ? در صÙ?ØØ§Øª Ù?ب زباÙ? PHPâ?? Ù?Ù? Ù?اسط بسÙ?ار Ù?Ù?اسب است. اطÙ?اعات
بÙ?شتر راجع بÙ? PHPâ??در ساÙ?ت http://www.php.net Ù?جÙ?د دارد.
Ù?ثاÙ?Ù?اÙ?Ù? Ù?Ù?ز با استÙ?ادÙ? از Perlâ?? Ù? CGI.pm Ù? mod_perl Ù?جÙ?د دارد.
2.3) Ø¢Ù?ا PostgreSQLâ?? Ù?Ù? Ù?اسط Ù?اربرÙ? گراÙ?Ù?Ù?Ù? داردØ?
Ú?Ù?د Ù?رÙ? اÙ?زار گراÙ?Ù?Ù?Ù? براÙ? PostgreSQLâ?? Ù?جÙ?د دارد Ù?Ù? شاÙ?Ù? pgAccess درساÙ?ت
http://www.pgaccess.org Ù? pgAdmin III در ساÙ?ت http://www.pgadmin.org Ù? RHDB
Admin در ساÙ?ت http://sources.redhat.com/rhdb Ù? Rekall در ساÙ?ت
http://www.thekompany.com/products/rekall Ù?Ù?â??باشد. Ù?Ù?Ú?Ù?Ù?Ù? Ù?Ù? phpPgAdmin Ù?Ù? در
ساÙ?ت http://phppgadmin.sourceforge.net Ù?جÙ?د دارد Ù?Ù? Ù?Ù? Ù?اسط Ù?بÙ? براÙ? Ù?دÙ?رÙ?ت
PostgreSQL Ù?Ù?â??باشد.
براÙ? دÙ?دÙ? اطÙ?اعات بÙ?شتر راجع بÙ? Ù?رÙ?â??اÙ?زارÙ?اÙ? گراÙ?Ù?Ù?Ù? براÙ? PostgreSQL بÙ? آدرس
http://techdocs.postgresql.org/guides/GUITools Ù?راجعÙ? Ù?Ù?Ù?د.
2.4) با Ú?Ù? زباÙ?Ù?اÙ? برÙ?اÙ?Ù?â??Ù?Ù?Ù?سÙ? Ù?Ù?â??تÙ?اÙ? با PostgreSQLâ?? ارتباط برÙ?رار Ù?ردØ?
بÙ?شتر زباÙ?Ù?اÙ? برÙ?اÙ?Ù?â??Ù?Ù?Ù?سÙ? Ù?Ù?â??تÙ?اÙ?Ù?د با PostgreSQLâ?? ارتباط برÙ?رار Ù?Ù?Ù?د. بÙ? Ù?Ù?راÙ?
سÙ?رس PostgreSQL تعدادÙ? از Ù?اسطÙ?اÙ? Ù?Ù?رد Ù?Ù?از براÙ? ارتباط با پاÙ?گاÙ? دادÙ? از طرÙ?Ù?
زباÙ?Ù?اÙ? Ù?ختÙ?Ù? Ø¢Ù?دÙ? است Ù?Ù? در زÙ?ر Ù?Ù?ست Ø¢Ù?Ù?ا را Ù?شاÙ?دÙ? Ù?Ù?â??Ù?Ù?Ù?د.
C (libpq)
Embedded C (ecpg)
Java (jdbc)
Python (PyGreSQL)
TCL (libpgtcl)
Ù?اسطÙ?اÙ? دÙ?گر در ساÙ?ت http://gborg.postgresql.org در Ù?سÙ?ت Drivers/Interfaces Ù?جÙ?د
دارد.
سÙ?اÙ?ات Ù?دÙ?رÙ?تÙ?
3.1) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? PostgreSQLâ?? را در شاخÙ?â??اÙ? غÙ?ر از /usr/local/pgsql/ Ù?صب Ù?Ù?Ù?Ø?
Ù?Ù?Ù?ع اجراÙ? دستÙ?ر configure از گزÙ?Ù?Ù? prefix-- استÙ?ادÙ? Ù?Ù?Ù?د.
3.2) Ú?را Ù?Ù?Ù?عÙ? Ù?Ù? Ù?Ù? برÙ?اÙ?Ù? postmasterâ?? را اجرا Ù?Ù? Ù?Ù?Ù? Ù¾Ù?اÙ? Bad system callâ?? Ù?
Ù?ا core dump â??Ù?Ù?â??Ú¯Ù?رÙ?Ø?
بÙ? دÙ?اÙ?Ù? Ù?ختÙ?Ù? Ù?Ù?Ù?Ù? است اÙ?Ù? اتÙ?اÙ? بÙ?Ù?تد. اÙ?ا در Ù?دÙ? اÙ?Ù? Ø´Ù?ا Ù?Ø·Ù?ئÙ? Ø´Ù?Ù?د Ù?Ù? Ù?Ù?
اÙ?Ù?اÙ?ات اضاÙ?Ù? System Vâ?? در Ù?رÙ?Ù? Ø´Ù?ا Ù?صب شدÙ? باشد. PostgreSQL براÙ? اجرا شدÙ? Ù?Ù?از
بÙ? استÙ?ادÙ? از اÙ?Ù?اÙ?ات ØØ§Ù?ظÙ? Ù?شترÙ? Ù? سÙ?اÙ?Ù?رÙ?ا دارد.
3.3) Ú?را Ù?Ù?Ù?عÙ? Ù?Ù? Ù?Ù? سعÙ? Ù?Ù?â??Ù?Ù?Ù? برÙ?اÙ?Ù? postmasterâ?? را اجرا Ù?Ù?Ù? خطاÙ?
IpcMemoryCreate Ù?Ù?â??Ú¯Ù?رÙ?Ø?
Ø§ØØªÙ?اÙ?اÙ?â?? Ù?سÙ?ت اÙ?جاد ØØ§Ù?ظÙ? Ù?شترÙ? در Ù?رÙ?Ù? بÙ? درستÙ? تÙ?ظÙ?Ù? Ù?شدÙ? است Ù? Ù?ا اÙ?Ù?Ù?Ù? باÙ?د
Ù?ضاÙ? ØØ§Ù?ظÙ? اشتراÙ?Ù? در Ù?رÙ?Ù? را زÙ?اد Ù?رد. Ù?Ù?زاÙ? دÙ?Ù?Ù? ØØ§Ù?ظÙ? Ù?شترÙ? Ù?Ù?رد Ù?Ù?از بستÙ? بÙ?
Ù?عÙ?ارÙ? Ù? Ù?ØÙ?Ù? استÙ?ادÙ? از باÙ?رÙ?ا تÙ?سط برÙ?اÙ?Ù? postmaster دارد. براÙ? بÙ?شتر سÙ?ستÙ?â??Ù?ا
Ù?Ù? با تÙ?ظÙ?Ù?ات Ù¾Ù?Ø´â??Ù?رض Ù?ار Ù?Ù?â??Ù?Ù?Ù?د Ù?Ù?دار اÙ?Ù? ØØ§Ù?ظÙ? ØØ¯Ù?د 1 Ù?گاباÙ?ت است. براÙ? دÙ?دÙ?
اطÙ?اعات بÙ?شتر راجع بÙ? ØØ§Ù?ظÙ? Ù?شترÙ? Ù? سÙ?اÙ?Ù?ر بÙ? PostgreSQL Administrator's Guide
Ù?راجعÙ? Ù?Ù?Ù?د.
3.4) Ú?را Ù?Ù?Ù?عÙ? Ù?Ù? Ù?Ù? سعÙ? Ù?Ù?â??Ù?Ù?Ù? برÙ?اÙ?Ù? postmasterâ?? را اجرا Ù?Ù?Ù? خطاÙ?
IpcSemaphoreCreate Ù?Ù?â??Ú¯Ù?رÙ?Ø?
اگر Ù¾Ù?غاÙ? خطا (â??pcSemaphoreCreate: semget failed (No space left on device باشد
بÙ? اÙ?Ù? Ù?عÙ?Ù? است Ù?Ù? تعداد سÙ?اÙ?Ù?رÙ?اÙ? تÙ?ظÙ?Ù? شدÙ? در Ù?رÙ?Ù? Ù?اÙ?Ù? Ù?Ù?ست. PostgreSQLâ?? براÙ?
Ù?ر Ù?راÙ?Ù?دÙ? Ù?Ù? در backend اجرا Ù?Ù?â??Ø´Ù?د بÙ? Ù?Ù? سÙ?اÙ?Ù?ر Ù?Ù?از دارد. Ù?Ù? راÙ? ØÙ? Ù?Ù?Ù?ت براÙ?
اÙ?Ù? Ù?سئÙ?Ù? Ø¢Ù? است Ù?Ù? postmaster را با اعÙ?اÙ? Ù?ØØ¯Ù?دÙ?ت رÙ?Ù? تعداد Ù?راÙ?Ù?دÙ?اÙ?Ù? Ù?Ù?
Ù?Ù?â??تÙ?اÙ?د اÙ?جاد Ù?Ù?د اجرا Ù?Ù?Ù?Ù?. براÙ? اÙ?Ù?Ù?ار از گزÙ?Ù?Ù? N- Ù? Ù?Ù? عدد Ù?Ù?تر از 32
استÙ?ادÙ? Ù?Ù?Ù?د. راÙ? ØÙ? دائÙ?Ù? اÙ?Ù? Ù?Ø´Ù?Ù? Ø¢Ù? است Ù?Ù? پاراÙ?ترÙ?اÙ? SEMMNS, SEMMNI Ù?رÙ?Ù? را
اÙ?زاÙ?Ø´ دÙ?Ù?Ù?.
در زÙ?اÙ? دسترسÙ? Ø®Ù?Ù?Ù? زÙ?اد بÙ? پاÙ?گاÙ? دادÙ?Ø? â?? سÙ?اÙ?Ù?رÙ?اÙ? Ù?اÙ?عتبر Ù?Ù?â??تÙ?اÙ?Ù?د باعث
crashâ?? Ù?ردÙ? سÙ?ستÙ? Ø´Ù?Ù?د.
اگر Ù¾Ù?غاÙ? خطا Ú?Ù?ز دÙ?گرÙ? باشد Ø§ØØªÙ?اÙ?اÙ? بÙ? دÙ?Ù?Ù? Ø¢Ù? است Ù?Ù? Ù?رÙ?Ù? از سÙ?اÙ?Ù?رÙ?ا
پشتÙ?باÙ?Ù? Ù?Ù?Ù?â??Ù?Ù?د. براÙ? دÙ?دÙ? اطÙ?اعات بÙ?شتر راÙ?Ù?Ù?اÙ? Ù?دÙ?رÙ?تÙ? PostgreSQL را Ù?طاÙ?عÙ?
Ù?Ù?Ù?د.
3.5) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? اتصاÙ?ات ساÙ?ر Ù?اشÙ?Ù?Ù?ا را Ù?Ù?ترÙ? Ù?Ù?Ù?Ø?
بÙ? صÙ?رت Ù¾Ù?Ø´ Ù?رض Ù?Ù?Ø· از Ù?اشÙ?Ù?Ù? Ù?Ù? PostgreSQL رÙ?Ù? Ø¢Ù? در ØØ§Ù? اجراست Ù?Ù?â??تÙ?اÙ? با
استÙ?ادÙ? از سÙ?Ù?تâ??Ù?اÙ? Ù?Ù?Ù?Ù?Ù?سÙ? بÙ? Ø¢Ù? Ù?تصÙ? شد. ساÙ?ر Ù?اشÙ?Ù?â??Ù?ا Ù?ادر Ù?Ù?ستÙ?د بÙ?
PostgreSQL Ù?تصÙ? Ø´Ù?Ù?د Ù?گر Ø¢Ù?Ù?Ù? گزÙ?Ù?Ù? tcp_sockets در Ù?اÙ?Ù? postgresql.conf Ù?عاÙ? شدÙ?
Ù? Ù?Ù?Ú?Ù?Ù?Ù? با اصÙ?Ø§Ø Ù?اÙ?Ù? PGDATA/ph_hba.conf Ù?Ù?Ù?تâ??Ø´Ù?اسÙ? Ù?بتÙ?Ù? بر Ù?Ù?زباÙ? Ù?Ù?ز Ù?عاÙ?
Ø´Ù?د. با اÙ?Ù? Ù?ار Ù?Ù?â??تÙ?اÙ? اتصاÙ?ات TCP/IP بÙ? PostgreSQLâ?? اÙ?جاد Ù?رد.
3.6) براÙ? Ù?اراÙ?Ù? باÙ?اتر Ù? بÙ?تر پاÙ?گاÙ? دادÙ? Ù?Ù? Ú?Ù? تÙ?ظÙ?Ù?اتÙ? را باÙ?د اÙ?جاÙ? دÙ?Ù?Ø?
بÙ? Ø·Ù?ر ØØªÙ? استÙ?ادÙ? از اÙ?دÙ?سâ??Ù?ا باعث باÙ?ا رÙ?تÙ? سرعت پاسخâ??Ú¯Ù?Ù?Ù? بÙ? درخÙ?استâ??Ù?ا Ø®Ù?اÙ?د
شد. دستÙ?ر EXPLAIN ANALYZE بÙ? Ø´Ù?ا اÙ?Ù?اÙ? دÙ?دÙ? Ù?ØÙ?Ù? پردازش Ù?Ù? دستÙ?ر تÙ?سط PostgreSQL
را Ù?Ù?â??دÙ?د.
اگر Ø´Ù?ا تعداد زÙ?ادÙ? INSERTâ?? دارÙ?د سعÙ? Ù?Ù?Ù?د Ø¢Ù?Ù?ا را با Ù?رار دادÙ? در Ù?Ù? Ù?اÙ?Ù? با
دستÙ?ر COPYâ?? اجرا Ù?Ù?Ù?د. اÙ?Ù? دستÙ?ر بÙ? Ù?راتب از INSERT سرÙ?عتر است. ØØªÙ?â??اÙ?اÙ?Ù?اÙ? سعÙ?
Ù?Ù?Ù?د از تراÙ?Ù?Ø´Ù?ا استÙ?ادÙ? Ù?Ù?Ù?Ù?د. تراÙ?Ù?Ø´Ù?ا Ù?جÙ?Ù?عÙ? دستÙ?راتÙ? Ù?ستÙ?د Ù?Ù? بÙ?Ù?د BEGIN Ù?
â??COMMIT Ù?Ù?â??Ø¢Ù?Ù?د. اگر Ù?Ù? دستÙ?ر بÙ? صÙ?رت عادÙ? اجرا Ø´Ù?د PostgreSQL Ø®Ù?د Ø¢Ù? دستÙ?ر را
بÙ? صÙ?رت Ù?Ù? تراÙ?Ù?Ø´ Ù?ستÙ?Ù? Ù?گاÙ? Ù?ردÙ? Ù? اجرا Ù?Ù?â??Ù?Ù?د. Ù?Ù?Ù?عÛ? Ù?Ù? تغÙ?Ù?رات زÙ?ادÙ? در
پاÙ?گاÙ? دادÙ? اÙ?جاÙ? Ù?Ù?â??Ø´Ù?د اÙ?دÙ?سÙ?اÙ? Ù?بÙ?Ù? را ØØ°Ù? Ù? Ù?جدداÙ?â?? اÙ?جاد Ù?Ù?Ù?د.
استÙ?ادÙ? از گزÙ?Ù?Ù? o -F- در Ù?رÙ?اÙ? postmaster باعث غÙ?ر Ù?عاÙ? Ù?ردÙ? ()fsync Ù?Ù?â??Ø´Ù?د.
اÙ?Ù? دستÙ?ر بعد از Ù?ر تراÙ?Ù?Ø´ اطÙ?اعات را رÙ?Ù? Ù?ارددÙ?سÙ? Ù?Ù?تÙ?Ù? Ù?Ù?â??Ù?Ù?د.
براÙ? اÙ?زاÙ?Ø´ تعداد باÙ?رÙ?اÙ? ØØ§Ù?ظÙ? اشتراÙ?Ù? از گزÙ?Ù?Ù? B- بÙ? Ù?Ù?راÙ? Ù?رÙ?اÙ? postmaster
استÙ?ادÙ? Ù?Ù?Ù?د. تÙ?جÙ? Ù?Ù?Ù?د Ù?Ù? اگر اÙ?Ù? عدد Ø®Ù?Ù?Ù? بزرگ باشد Ù?Ù?Ù?Ù? است postmaster اصÙ?اÙ?â??
اجرا Ù?Ø´Ù?د. Ù?ر باÙ?ر 8 Ù?Ù?Ù?Ù? باÙ?ت ØØ§Ù?ظÙ? Ù?Ù?از دارد Ù? تعداد باÙ?رÙ?ا بÙ? Ø·Ù?ر Ù¾Ù?Ø´ Ù?رض 64
است.
Ù?Ù?Ú?Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ? با گزÙ?Ù?Ù? S- Ù?Ù?زاÙ? ØØ§Ù?ظÙ?â??اÙ? Ù?Ù? براÙ? Ù?رتبâ??سازÙ?â??Ù?اÙ? Ù?Ù?Ù?ت تÙ?سط
PostgreSQL استÙ?ادÙ? Ù?Ù?â??Ø´Ù?د را اÙ?زاÙ?Ø´ داد. Ù?Ù?دار Ù¾Ù?Ø´ Ù?رض 512 Ù?Ù?Ù?Ù? باÙ?ت است.
استÙ?ادÙ? از دستÙ?ر CLUSTER Ù?Ù?ز براÙ? باÙ?ا بردÙ? Ù?اراÙ?Ù? Ù?Ù?ثر ا ست. دستÙ?ر راÙ?Ù?Ù?اÙ?
CLUSTER اطÙ?اعات بÙ?شترÙ? در اÙ?Ù? زÙ?Ù?Ù?Ù? بÙ? Ø´Ù?ا Ù?Ù?â??دÙ?د.
3.7) Ú?Ù? اÙ?Ù?اÙ?اتÙ? براÙ? Ù¾Ù?دا Ù?ردÙ? اشÙ?اÙ?â?? Ù?جÙ?د داردØ?
PostgerSQLâ?? اÙ?Ù?اÙ?ات Ù?ختÙ?Ù?Ù? براÙ? گزارش دادÙ? Ù?ضعÙ?ت Ø®Ù?د دارد Ù?Ù? براÙ? اشÙ?اÙ? زداÙ?Ù?
Ù?Ù?â??تÙ?اÙ? از Ø¢Ù?Ù?ا استÙ?ادÙ? Ù?رد.
با استÙ?ادÙ? از گزÙ?Ù?Ù? enable-assert-- تعداد زÙ?ادÙ? ()assert براÙ? Ù?Ù?Ù?Ù?تÙ?ر Ù?ردÙ? Ù?
تÙ?Ù?Ù? برÙ?اÙ?Ù? در صÙ?رت برÙ?ز خطاÙ?اÙ? Ù?اخÙ?استÙ? Ù?عاÙ? Ù?Ù?â??Ø´Ù?د.
Ù?Ù? Postmaster Ù? Ù?Ù? postgres گزÙ?Ù?Ù?â??Ù?اÙ? زÙ?ادÙ? براÙ? اشÙ?اÙ? زداÙ?Ù? دارÙ?د. Ù?Ù?Ù?عÙ? Ù?Ù?
postmaster را اجرا Ù?Ù?â??Ù?Ù?Ù?د خرÙ?جÙ? استاÙ?دارد Ù? خطا را سÙ?ت Ù?اÙ?Ù? log ارساÙ? Ù?Ù?Ù?د.
cd /usr/local/pgsql
./bin/postmaster >server.log 2>&1 &
اÙ?Ù? Ù?ار Ù?Ù? Ù?اÙ?Ù? log در باÙ?اترÙ?Ù? شاخÙ? PostgreSQLâ?? اÙ?جاد Ù?Ù?â??Ù?Ù?د. اÙ?Ù? Ù?اÙ?Ù? ØØ§Ù?Ù?
اطÙ?اعات Ù?Ù?Ù?دÙ? در Ù?Ù?رد Ù?سائÙ? Ù? خطاÙ?اÙ?Ù? است Ù?Ù? براÙ? سرÙ?ر اتÙ?اÙ? اÙ?تادÙ? است. براÙ?
دÙ?دÙ? جزئÙ?ات بÙ?شتر Ù?Ù?â??تÙ?اÙ? از d- بÙ? Ù?Ù?راÙ? Ù?رÙ?اÙ? postmasterâ?? استÙ?ادÙ? Ù?رد. گزÙ?Ù?Ù?
d- Ù?Ù?Ú?Ù?Ù?Ù? Ù?Ù? عدد Ù?Ù?â??Ú¯Ù?رد Ù?Ù? Ù?شاÙ? دÙ?Ù?دÙ? Ø³Ø·Ø Ø¬Ø²Ø¦Ù?اتÙ? است Ù?Ù? در Logâ??Ù?اÙ?Ù? Ù?Ù?شتÙ?
Ù?Ù?â??Ø´Ù?د. با باÙ?ابردÙ? اÙ?Ù? عدد ØØ¬Ù? اطÙ?اعات تÙ?Ù?Ù?د شدÙ? در LogÙ?اÙ?Ù? Ù?Ù?ز اÙ?زاÙ?Ø´ Ù?Ù?â??Ù?ابد.
اگر postmaster در ØØ§Ù? اجرا Ù?باشدØ? Ù?Ù?â??تÙ?اÙ?Ù?Ù? postgres را بÙ? Ø·Ù?ر Ù?ستÙ?Ù?Ù? از خط
Ù?رÙ?اÙ? اجرا Ù?ردÙ? Ù? دستÙ?رات SQL را بÙ? Ø¢Ù? بدÙ?Ù?Ù?. اÙ?Ù? Ù?ار Ù?Ù?Ø· براÙ? اشÙ?اÙ?â??Ù?ابÙ? تÙ?صÙ?Ù?
Ù?Ù?â??Ø´Ù?د. تÙ?جÙ? Ù?Ù?Ù?د Ù?Ù? در اÙ?Ù? ØØ§Ù?ت Ù?Ù? دستÙ?ر با Ù?اراÙ?تر newline خاتÙ?Ù? Ù¾Ù?دا Ù?Ù?â??Ù?Ù?د Ù?
Ù?Ù? با ;. اگر postmaster را با اÙ?Ù?اÙ?ات اشÙ?اÙ?â??Ù?ابÙ? Ù?اÙ?Ù¾Ù?Ù? Ù?ردÙ? باشÙ?د Ù?Ù?â??تÙ?اÙ?Ù?د با
استÙ?ادÙ? از Ù?Ù? برÙ?اÙ?Ù? اشÙ?اÙ?â??Ù?اب اجراÙ? برÙ?اÙ?Ù? را Ù?Ù?Ù?Ù?تÙ?ر Ù?Ù?Ù?د.
اگر postmaster در ØØ§Ù? اجرا باشد با دستÙ?ر psql Ù?Ù?â??تÙ?اÙ? بÙ? postgres Ù?تصÙ? شد. با
Ù¾Ù?دا Ù?ردÙ? PID Ù?راÙ?Ù?د postgres Ù?Ù? psql بÙ? Ø¢Ù? Ù?تصÙ? شدÙ? است Ù?Ù?â??تÙ?اÙ? Ø¢Ù? را Ù?Ù?Ù?Ù?تÙ?ر
Ù?رد. براÙ? اÙ?Ù?Ù?ار باÙ?د Ù?Ù? برÙ?اÙ?Ù? اشÙ?اÙ?â??Ù?اب را بÙ? Ø¢Ù? pid Ù?تصÙ? Ù?رد. اگر بخÙ?اÙ?Ù?Ù?
باÙ?ا Ø¢Ù?دÙ? postgres را Ù?Ù?Ù?Ù?تÙ?ر Ù?Ù?Ù?Ù? Ù?اÙ?Ù? است "PGOPTIONS="-W n Ù? psql را اجرا
Ù?Ù?Ù?Ù?. اÙ?Ù? Ù?ار باعث Ù?Ù?â??Ø´Ù?د Ù?Ù? postgres با n ثاÙ?Ù?Ù? تاخÙ?ر اجرا Ø´Ù?د Ù? در اÙ?Ù? Ù?اصÙ?Ù?
Ø´Ù?ا Ù?Ù?â??تÙ?اÙ?Ù?د برÙ?اÙ?Ù? اشÙ?اÙ?â??Ù?اب را بÙ? Ø¢Ù? Ù?تصÙ? Ù?ردÙ? Ù? با Ù?رار دادÙ? Ù?Ù? Ù?Ù?Ø·Ù? تÙ?Ù?Ù?
رÙ?Ù?د اجراÙ? Ø¢Ù? را Ù?Ù?Ù?Ù?تÙ?ر Ù?Ù?Ù?د.
postgres گزÙ?Ù?Ù?â??Ù?اÙ? s-â?? Ù? A- Ù? t-â?? دارد Ù?Ù? براÙ? Ù¾Ù?دا Ù?ردÙ? اشÙ?اÙ?ات بسÙ?ار Ù?Ù?اسب
Ù?ستÙ?د.
Ø´Ù?ا Ù?Ù?â??تÙ?اÙ?Ù?د postgreSQL را با اÙ?Ù?اÙ?ات profiling Ù?اÙ?Ù¾Ù?Ù? Ù?Ù?Ù?د. اÙ?Ù? Ù?ار باعث
Ù?Ù?â??Ø´Ù?د Ù?Ù? زÙ?اÙ? اجراÙ? دÙ?Ù?Ù? Ù?ر تابع در برÙ?اÙ?Ù? Ù?شخص Ø´Ù?د. خرÙ?جÙ?â??Ù?اÙ? تÙ?Ù?Ù?د شدÙ? در اÙ?Ù?
ØØ§Ù?ت در Ù?اÙ?Ù? DLINUX_PROFILE. رÙ?ختÙ? Ù?Ù?â??Ø´Ù?د.
3.8) Ú?را Ù?Ù?Ù?عÙ? Ù?Ù? Ù?Ù? Ù?Ù?â??Ø®Ù?اÙ?Ù? بÙ? پاÙ?گاÙ? دادÙ? Ù?صÙ? Ø´Ù?Ù? Ù¾Ù?اÙ? "Sorry, too many
clients" â??Ù?Ù?â??Ú¯Ù?رÙ?Ø?
Ø´Ù?ا باÙ?د ØØ¯Ø§Ù?ثر تعداد Ù?راÙ?Ù?دÙ?اÙ? Ù?Ù?زÙ?اÙ? postmaster را اÙ?زاÙ?Ø´ دÙ?Ù?د. Ù?Ù?دار Ù¾Ù?Ø´ Ù?رض
32 است. براÙ? اÙ?زاÙ?Ø´ Ø¢Ù? Ù?Ù?â??تÙ?اÙ? از گزÙ?Ù?Ù? N- استÙ?ادÙ? Ù?رد Ù? Ù?ا Ù?اÙ?Ù? postgresql.conf
را اصÙ?Ø§Ø Ù?Ù?Ù?د
تÙ?جÙ? Ù?Ù?Ù?د Ù?Ù? اگر N- Ù?Ù?دارÙ? بÙ?شتر از 32 داشتÙ? باشد باÙ?د Ù?Ù?دار B- را Ù?Ù?ز اÙ?زاÙ?Ø´
دÙ?Ù?Ù?. اÙ?Ù? Ù?Ù?دار باÙ?د ØØ¯Ø§Ù?Ù? دÙ? برابر Ù?Ù?دار N-â?? باشد. براÙ? اعداد Ø®Ù?Ù?Ù? باÙ?ا باÙ?د
بعضÙ? از پاراÙ?ترÙ?اÙ? Ù?رÙ?Ù? را Ù?Ù?ز اصÙ?Ø§Ø Ù?رد. پاراÙ?ترÙ?اÙ?Ù? Ù?ظÙ?ر ØØ¯Ø§Ù?ثر اÙ?دازÙ? ØØ§Ù?ظÙ?
اشتراÙ?Ù? SHMMAX Ø? ØØ¯Ø§Ù?ثر تعداد سÙ?اÙ?Ù?رÙ?ا SEMMNIâ?? Ù? SEMMNS Ø? ØØ¯Ø§Ù?ثر تعداد Ù?راÙ?Ù?دÙ?ا
NPROCØ? ØØ¯Ø§Ù?ثر Ù?راÙ?Ù?دÙ?اÙ? Ù?Ù? Ù?اربر MAXUPRC Ù? ØØ¯Ø§Ù?ثر Ù?اÙ?Ù?Ù?اÙ? باز NFILE Ù? NINODE.
Ù?Ù?Ù? از دÙ?اÙ?Ù?Ù? Ù?Ù? تعداد اتصاÙ?ات Ù?Ù?زÙ?اÙ? postgreSQL Ù?ØØ¯Ù?د است Ø¢Ù? است Ù?Ù? Ù?Ù?ازÙ?اÙ?
PostgreSQL بÙ?Ø´ از Ù?Ù?ابع Ù?Ù?جÙ?د سÙ?ستÙ? Ù?باشد.
3.9) در شاخÙ? pgsql_tmp Ú?Ù? Ú?Ù?زÙ? Ù?رار داردØ?
دراÙ?Ù? شاخÙ? Ù?اÙ?Ù?Ù?اÙ? Ù?Ù?Ù?تÙ? Ù?رار دارد Ù?Ù? با اجراÙ? درخÙ?استÙ?ا بÙ? Ù?جÙ?د Ø¢Ù?دÙ? است. بÙ?
عÙ?Ù?اÙ? Ù?ثاÙ? اگر براÙ? اجراÙ? دستÙ?ر order by Ù?Ù?از بÙ? اÙ?جاÙ? Ù?رتب سازÙ? باشد Ù? در صÙ?رتÙ?
Ù?Ù? ØØ§Ù?ظÙ? Ù?شخص شدÙ? با گزÙ?Ù?Ù? S- براÙ? اÙ?Ù?Ù?ار Ù?اÙ?Ù? Ù?باشد سÙ?ستÙ? Ù?Ù? Ù?اÙ?Ù? Ù?Ù?Ù?ت در اÙ?Ù?
شاخÙ? اÙ?جاد Ù?Ù?â??Ù?Ù?د تا عÙ?Ù? Ù?رتب سازÙ? را اÙ?جاÙ? دÙ?د.
Ù?اÙ?Ù?Ù?اÙ? Ù?Ù?Ù?ت Ù?عÙ?Ù?Ù?اÙ? بÙ? صÙ?رت اتÙ?Ù?اتÙ?Ù? پاÙ? Ù?Ù?â??Ø´Ù?د اÙ?ا اگر postgreSQL در ØÙ?Ù? Ù?رتب
سازÙ? crashâ?? Ù?Ù?د Ø¢Ù? Ù?اÙ?Ù?Ù?ا باÙ?Ù? Ù?Ù?â??Ù?اÙ?Ù?د. با stop Ù? start Ù?ردÙ? برÙ?اÙ?Ù? postmaster
اÙ?Ù? Ù?اÙ?Ù?Ù?ا پاÙ? Ù?Ù?â??Ø´Ù?Ù?د.
3.10) Ú?را براÙ? بÙ? رÙ?ز Ù?ردÙ? Ù?سخÙ? پاÙ?گاÙ? دادÙ? Ù?Ù? باÙ?د Ù?Ù? دادÙ? Ù?ا را dumpâ?? Ù? Ù?جدداÙ?
restore Ù?Ù?Ù?Ø?
تÙ?Ù? برÙ?اÙ?Ù? Ù?Ù?Ù?س postgreSQL در Ù?سخÙ?â??Ù?اÙ? ارائÙ? شدÙ? Ù?Ù? Ù?Ù?Ø· minor Ø¢Ù?Ù?ا Ù?تÙ?اÙ?ت است
Ù?Ù?Ø· تغÙ?Ù?رات Ù?Ù?Ú?Ù?Ù? اعÙ?اÙ? Ù?Ù?â??Ù?Ù?Ù?دØ? بÙ?ابراÙ?Ù? براÙ? بÙ? رÙ?ز Ù?ردÙ? از Ù?سخÙ? 7.2â??بÙ? 7.2.1
Ù?Ù?ازÙ? بÙ? dump Ù? restore Ù?Ù?ست. اÙ?ا در Ù?سخÙ?â??Ù?اÙ?Ù? Ù?Ù? major Ø¢Ù?Ù?ا تغÙ?Ù?ر Ù?Ù?â??Ù?Ù?د غاÙ?باÙ?
ساختار داخÙ?Ù? جداÙ?Ù? Ù? Ù?اÙ?Ù?Ù?اÙ? دادÙ? تغÙ?Ù?ر Ù?Ù?â??Ù?Ù?د. اÙ?Ù? تغÙ?Ù?رات Ù?عÙ?Ù?Ù?اÙ?â?? Ù¾Ù?Ú?Ù?دÙ?
Ù?ستÙ?د. براÙ? اÙ?تÙ?اÙ? دادÙ?â??Ù?اÙ? Ù?Ù?جÙ?د در پاÙ?گاÙ? دادÙ? در اÙ?Ù? ØØ§Ù?ت باÙ?د â??از dump Ù?
restore استÙ?ادÙ? Ù?رد.
در Ù?سخÙ?â??Ù?اÙ?Ù? Ù?Ù? ساختار رÙ?Ù? دÙ?سÙ? تغÙ?Ù?رÙ? Ù?Ù?Ù?â??Ù?Ù?د Ù?Ù? تÙ?اÙ? از برÙ?اÙ?Ù? pg_upgrade براÙ?
بÙ? رÙ?ز Ù?ردÙ? پاÙ?گاÙ? دادÙ? استÙ?ادÙ? Ù?رد بدÙ?Ù? اÙ?Ù?Ù?Ù? Ù?Ù?ازÙ? بÙ? استÙ?ادÙ? از dump Ù?
restore باشد. در Ù?ادداشتÙ? Ù?Ù? بÙ? Ù?Ù?راÙ? Ù?ر تÙ?زÙ?ع Ù?Ù?â??Ø¢Ù?د ذÙ?ر شدÙ? است Ù?Ù? Ø¢Ù?ا برÙ?اÙ?Ù?
pg_upgrade براÙ? اÙ?Ù? تÙ?زÙ?ع Ù?جÙ?د دارد Ù?ا Ø®Ù?ر.
3.11) از Ú?Ù? سخت اÙ?زارÙ? باÙ?د استÙ?ادÙ? Ù?Ù?Ù?Ø?
Ú?Ù?Ù? اÙ?ثر سختâ??اÙ?زارÙ?اÙ? PC سازگار Ù?ستÙ?د Ù?ردÙ? Ù?Ù?ر Ù?Ù?â??Ù?Ù?Ù?د Ù?Ù? Ù?Ù?Ù?Ù?ت Ø¢Ù?Ù?ا Ù?Ù?ز Ù?Ù?ساÙ?
است. در ØØ§Ù?Ù?Ù?Ù? اÙ?Ù?Ø·Ù?ر Ù?Ù?ست. استÙ?ادÙ? از Ù?اردÙ?اÙ? SCSI Ù? ØØ§Ù?ظÙ?â??Ù?اÙ? ECC Ù? Ù?ادربردÙ?اÙ?
با Ù?Ù?Ù?Ù?ت باÙ?ا Ù?سبت بÙ? سخت اÙ?زارÙ?اÙ? ارزاÙ?تر Ù?تاÙ?ج بÙ?ترÙ? از Ù?ظر Ù?اراÙ?Ù? Ù? پاÙ?دارÙ?
سÙ?ستÙ? بÙ?Ù?راÙ? Ø®Ù?اÙ?د داشت. PostgreSQL رÙ?Ù? بÙ?شتر سخت اÙ?زارÙ?ا اجرا Ù?Ù?â??Ø´Ù?د اÙ?ا اگر
Ù?اراÙ?Ù? Ù? اطÙ?Ù?Ù?اÙ? Ù?اÙ?تÙ?رÙ?اÙ? Ù?Ù?Ù?Ù? Ù?ستÙ?د باÙ?د سخت اÙ?زار Ù?Ù?اسب استÙ?ادÙ? Ø´Ù?د. در
گرÙ?Ù?Ù?اÙ? پستÙ? در Ù?Ù?رد سخت اÙ?زار Ù?Ù?اسب Ù? اÙ?تخاب Ø¢Ù? Ø¨ØØ« شدÙ? است.
سÙ?اÙ?ات عÙ?Ù?Ù?اتÙ?
4.1) تÙ?اÙ?ت بÙ?Ù? binary cursors Ù? Normal cursors Ú?Ù?ستØ?
راÙ?Ù?Ù?اÙ? دستÙ?ر DECLAREâ?? را Ù?طاÙ?عÙ? Ù?Ù?Ù?د.
4.2) Ù?Ù? Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? Ù?Ù?Ø· رÙ?Ù? Ú?Ù?د ردÙ?Ù? اÙ?Ù? Ù?ا Ù?Ù? ردÙ?Ù? تصادÙ?Ù? درخÙ?است SELECTâ??
بزÙ?Ù?Ø?
راÙ?Ù?Ù?اÙ? دستÙ?ر FETCH Ù?ا SELECT...LIMIT را ببÙ?Ù?Ù?د.
در Ù?اÙ?ع Ù?Ù? درخÙ?است باÙ?د بررسÙ? Ù? ارزÙ?ابÙ? Ø´Ù?د ØØªÙ? اگر Ø´Ù?ا Ù?Ù?Ø· Ú?Ù?د ردÙ?Ù? اÙ?Ù? را
بخÙ?اÙ?Ù?د. براÙ? Ù?ثاÙ? درخÙ?است ORDER BY را در Ù?ظر بگÙ?رÙ?د. اگر اÙ?دÙ?س Ù?ا Ù?Ù?اÙ?Ù?â??اÙ? براÙ?
ORDER BY Ù?جÙ?د داشتÙ? باشدØ?â??postgreSQLâ?? Ù?Ù?Ù?Ù? است بتÙ?اÙ?د Ù?Ù?Ø· Ú?Ù?د سطر اÙ?Ù? درخÙ?استÙ?
را ارزÙ?ابÙ? Ù?Ù?د Ù? Ù?ا اÙ?Ù?Ù?Ù? Ù?Ù? درخÙ?است پردازش Ø´Ù?د تا تعداد ردÙ?Ù?â??Ù?اÙ? درخÙ?استÙ? تÙ?Ù?Ù?د
Ø´Ù?د.
براÙ? اÙ?تخاب Ù?Ù? سطر تصادÙ?Ù? بÙ? رÙ?Ø´ زÙ?ر عÙ?Ù? Ù?Ù?â??Ù?Ù?Ù?Ù?:
SELECT col
FROM tab
ORDER BY random()
LIMIT 1;
4.3) Ù?Ù? Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? Ù?Ù?ستÙ? از جداÙ?Ù? Ù?ا ساÙ?ر Ú?Ù?زÙ?اÙ?Ù? Ù?Ù? در psqlâ?? Ù?جÙ?د دارد را
ببÙ?Ù?Ù?Ø?
براÙ? دÙ?دÙ? Ù?Ù?ست جداÙ?Ù? دستÙ?ر dt\ را در برÙ?اÙ?Ù? psqlâ?? استÙ?ادÙ? Ù?Ù?Ù?د. براÙ? دÙ?دÙ? Ù?Ù?ست
Ù?اÙ?Ù? Ù?رÙ?اÙ?Ù?ا ?\ را اجرا Ù?Ù?Ù?د. راÙ? دÙ?گر Ø®Ù?اÙ?دÙ? Ù?تÙ? برÙ?اÙ?Ù? psqlâ?? است Ù?Ù? در شاخÙ?
pgsql/src/bin/psql/describe.c â??Ù?رار دارد. اÙ?Ù? Ù?اÙ?Ù? ØØ§Ù?Ù? Ù?راÙ?Ù?Ù? SQLÙ?Ù? است Ù?Ù?
خرÙ?جÙ? را براÙ? دستÙ?راتÙ? Ù?Ù? با \â??در psql شرÙ?ع Ù?Ù?â??Ø´Ù?Ù?د تÙ?Ù?Ù?د Ù?Ù?â??Ù?Ù?Ù?د. راÙ? دÙ?گر
اجراÙ? psql با گزÙ?Ù?Ù? E-â??است. اÙ?Ù?Ù?ار باعث Ù?Ù?â??Ø´Ù?د Ù?Ù? psql Ù?بÙ? از اجرا Ù?ر دستÙ?ر
SQLâ??Ù?تÙ?اظر Ø¢Ù? را Ù?شاÙ? دÙ?د. PostgreSQLâ??Ù?Ù?Ú?Ù?Ù?Ù? Ù?Ù? برÙ?اÙ?Ù? SQLi دارد Ù?Ù? Ù?Ù?â??تÙ?اÙ? با
استÙ?ادÙ? از Ø¢Ù? اطÙ?اعات داخÙ?Ù? پاÙ?گاÙ? دادÙ? را استخراج Ù?رد.
4.4) Ú?Ú¯Ù?Ù?Ù? Ù?Ù? ستÙ?Ù? جدÙ?Ù? را ØØ°Ù? Ù?Ù?â??Ù?Ù?Ù?دØ? Ú?Ú¯Ù?Ù?Ù? Ù?Ù?ع دادÙ? Ø¢Ù? را عÙ?ض Ù?Ù?Ù?Ù?Ø?
ØØ°Ù? Ù?Ù? ستÙ?Ù? در تÙ?زÙ?ع 7.3 با استÙ?ادÙ? از دستÙ?ر ALTER TABLE DROP COLUMN اضاÙ?Ù? شدÙ?
است. در Ù?سخÙ?â??Ù?اÙ? Ù?بÙ?Ù? بÙ? رÙ?Ø´ زÙ?ر عÙ?Ù? Ù?Ù?Ù?د:
BEGIN;
LOCK TABLE old_table;
SELECT ... -- تÙ?اÙ? ستÙ?Ù?Ù?ا غÙ?ر از ستÙ?Ù?Ù? Ù?Ù? Ù?Ù?â??Ø®Ù?اÙ?Ù?د Ø¢Ù? را ØØ°Ù? Ù?Ù?Ù?د را در اÙ?Ù?جا بÙ?اÙ?رÙ?د
INTO TABLE new_table
FROM old_table;
DROP TABLE old_table;
ALTER TABLE new_table RENAME TO old_table;
COMMIT;
براÙ? عÙ?ض Ù?ردÙ? Ù?Ù?ع دادÙ? Ù?Ù? ستÙ?Ù? بÙ? رÙ?Ø´ زÙ?ر عÙ?Ù? Ù?Ù?Ù?د:
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;
4.5) ØØ¯Ø§Ù?ثر اÙ?دازÙ? Ù?Ù? ردÙ?Ù?Ø?â?? جدÙ?Ù? Ù? Ø®Ù?د پاÙ?گاÙ? دادÙ? Ú?Ù?در استØ?
Ù?ØØ¯Ù?دÙ?تÙ?ا عبارتÙ?د از:
ØØ¯Ø§Ù?ثر اÙ?دازÙ? پاÙ?گاÙ? دادÙ? Ù?اÙ?ØØ¯Ù?د (تا 32 تراباÙ?ت Ù?جÙ?د دارد)
ØØ¯Ø§Ù?ثر اÙ?دازÙ? Ù?Ù? جدÙ?Ù? 32 تراباÙ?ت
ØØ¯Ø§Ù?ثر ا Ù?دازÙ? Ù?Ù? ردÙ?Ù? 1.6 تراباÙ?ت
ØØ¯Ø§Ù?ثر اÙ?دازÙ? Ù?Ù? Ù?Ù?Ù?د 1 Ú¯Ù?گا باÙ?ت
ØØ¯Ø§Ù?ثر اÙ?دازÙ? ردÙ?Ù?Ù?اÙ? Ù?Ù? جدÙ?Ù? Ù?ا Ù?ØØ¯Ù?د
ØØ¯Ø§Ù?ثر ستÙ?Ù?Ù?اÙ? Ù?Ù? جدÙ?Ù? بستÙ? بÙ? Ù?Ù?ع جدÙ?Ù? بÙ?Ù? 250 تا 6000
ØØ¯Ø§Ù?ثر اÙ?دÙ?سÙ?اÙ? Ù?Ù? جدÙ?Ù? Ù?ا Ù?ØØ¯Ù?د
اÙ?بتÙ? در ØØ§Ù?ت Ù?اÙ?ØØ¯Ù?د Ù?Ù?ز Ù?ا Ù?ØØ¯Ù?د بÙ? ØØ¬Ù? Ù?ارددÙ?سÙ? Ù? Ù?ضاÙ? ØØ§Ù?ظÙ? Ø®Ù?اÙ?Ù?Ù? بÙ?د. در
صÙ?رتÙ? Ú©Ù? Ù?Ù?ادÙ?ر Ù?شخص شدÙ? بÙ? عÙ?Ù?اÙ? Ù?اÙ?ØØ¯Ù?د بÙ? صÙ?رت غÙ?ر Ù?عÙ?Ù?Ù?Ù? بزرÙ? Ø´Ù?Ù?د Ù?اراÙ?Ù?
سÙ?ستÙ? Ù?اÙ?Ø´ Ø®Ù?اÙ?د Ù?اÙ?ت.
براÙ? ذخÙ?رÙ? Ù?ردÙ? جداÙ?Ù? با اÙ?دازÙ? Ø®Ù?Ù?Ù? بزرگ Ù?Ù?ازÙ? Ù?Ù?ست Ù?Ù? سÙ?ستÙ? عاÙ?Ù? اÙ?Ù?اÙ? اÙ?جاد
Ù?اÙ?Ù?Ù?اÙ? بزرگ را داشتÙ? باشد. بÙ?Ù?Ù? جداÙ?Ù? Ø®Ù?Ù?Ù? بزرگ بÙ? صÙ?رت Ù?اÙ?Ù?Ù?اÙ?Ù? بÙ? ØØ¬Ù? Ù?Ù? Ú¯Ù?گا
باÙ?ت Ù?گاÙ?دارÙ? Ù?Ù?â??Ø´Ù?Ù?د.
اگر اÙ?دازÙ? بÙ?Ù?Ù?Ù?اÙ? دادÙ? را برابر 32 Ù?Ù?Ù?Ù? باÙ?ت Ù?رار دÙ?Ù?Ù? ØØ¯Ø§Ù?ثر اÙ?دازÙ? جدÙ?Ù? Ù?
ØØ¯Ø§Ù?ثر تعداد ستÙ?Ù?Ù?ا 4 برابر Ø®Ù?اÙ?د شد.
4.6) Ú?Ù?در Ù?ضاÙ? دÙ?سÙ? سخت براÙ? ذخÙ?رÙ? Ù?ردÙ? دادÙ?â??â??Ù?اÙ? Ù?Ù? Ù?اÙ?Ù? Ù?تÙ?Ù? Ù?Ù?رد Ù?Ù?از استØ?
Ù?Ù? پاÙ?گاÙ? دادÙ? PostgreSQLâ?? تا 5 برابر Ù?ضاÙ?Ù? رÙ?Ù? Ù?ارددÙ?سÙ? براÙ? Ù?گاÙ?دارÙ? Ù?Ù? Ù?اÙ?Ù?
Ù?تÙ?Ù? Ù?Ù?از دارد.
بÙ? عÙ?Ù?اÙ? Ù?ثاÙ? Ù?Ù? Ù?اÙ?Ù? با 100000 خط را در Ù?ظر بگÙ?رÙ?د Ù?Ù? در Ù?ر خط Ù?Ù? عدد صØÙ?Ø Ù? Ù?Ù?
تÙ?ضÙ?Ø Ù?تÙ?Ù? Ø¢Ù?دÙ? است. Ù?رض Ù?Ù?Ù?د Ù?Ù? رشتÙ? Ù?تÙ?Ù? بÙ? Ø·Ù?ر Ù?تÙ?سط 20 باÙ?ت باشد. اÙ?دازÙ?
Ù?اÙ?Ù? برابر 2.8 Ù?گا باÙ?ت Ø®Ù?اÙ?د بÙ?د Ù?Ù?Ù? PostgreSQL براÙ? Ù?گاÙ?دارÙ? اÙ?Ù? Ù?اÙ?Ù? بÙ? 6.4
Ù?گا باÙ?ت اطÙ?اعات Ù?Ù?از Ø®Ù?اÙ?د داشت.
32 bytes: اÙ?دازÙ? سراÙ?Ù?د Ù?ر خط بÙ? Ø·Ù?ر تÙ?رÙ?بÙ?
24 bytes: Ù?Ù? عدد صØÙ?Ø Ù? Ù?Ù? رشتÙ? 24 باÙ?تÙ?
+ 4 bytes: اشارÙ? گر رÙ?Ù? صÙ?ØÙ? بÙ? Ù?Ù? Ú?Ù?دتاÙ?Ù?
----------------------------------------
60 bytes در Ù?ر ردÙ?Ù?
اÙ?دازÙ? صÙ?ØØ§Øª دادÙ? در PostgreSQL برابر با 8 Ù?Ù?Ù?Ù? باÙ?ت است
8192 تعداد باÙ?تâ??Ù?ا در Ù?ر صÙ?ØÙ?
------------------- = 136 تعداد ردÙ?Ù?â??Ù?ا در Ù?Ù? صÙ?ØÙ? پاÙ?گاÙ? دادÙ?
60 تعداد باÙ?تâ??Ù?اÙ? Ù?ر ردÙ?Ù?
100000 تعداد ردÙ?Ù?Ù?ا
-------------------- = تعدادصÙ?ØØ§Øª پاÙ?گاÙ? دادÙ?
128 تعداد ردÙ?Ù?Ù?ا در Ù?ر صÙ?ØÙ?
735 تعداد صÙ?ØØ§Øª * 8192 تعداد باÙ?تâ??Ù?اÙ? Ù?ر صÙ?ØÙ? = 6,021,120 Ù?گا باÙ?ت
سربار اÙ?دÙ?سÙ?ا Ù?ا Ù?Ù?اÙ?Ù?â??Ù?ا از اÙ?Ù? Ù?Ù?دار Ù?Ù?تر است Ù?Ù?Ù? Ú?Ù?Ù? شاÙ?Ù? Ø®Ù?د دادÙ?â??Ù?ا Ù?Ù? Ù?ست
Ù?Ù?Ú©Ù? است اÙ?دازÙ? Ø¢Ù?Ù?ا Ù?Ù? بزرگ Ø´Ù?د.
NULLÙ?ا بÙ? صÙ?رت bitmap ذخÙ?رÙ? Ù?Ù?â??Ø´Ù?Ù?د Ù? از اÙ?Ù?رÙ? Ù?ضاÙ? بسÙ?ار Ù?Ù?Ù? را اشغاÙ? Ù?Ù?â??Ù?Ù?Ù?د.
4.7) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? بÙ?Ù?Ù?Ù? Ù?Ù? Ú?Ù? Ù?اربراÙ?Ø?â?? پاÙ?گاÙ? دادÙ?Ø?â?? Ù?Ù?اÙ?Ù? Ù? جداÙ?Ù?Ù? در سÙ?ستÙ?
تعرÙ?Ù? شدÙ? استØ?
psql تعداد زÙ?ادÙ? دستÙ?ر دارد Ù?Ù? با \ شرÙ?ع Ù?Ù?â??Ø´Ù?Ù?د Ù? اÙ?Ù? اطÙ?اعات را در اختÙ?ار Ù?ا
Ù?رار Ù?Ù?â??دÙ?Ù?د. براÙ? دÙ?دÙ? Ø¢Ù?Ù?ا دستÙ?ر ?\ را اجرا Ù?Ù?Ù?د. Ù?Ù?Ú?Ù?Ù?Ù? جداÙ?Ù? سÙ?ستÙ?Ù? Ù?Ù? Ù?اÙ?
Ø¢Ù?Ù?ا با pg_ â??شرÙ?ع Ù?Ù?â??Ø´Ù?د Ù?Ù?ز اÙ?Ù? اطÙ?اعات را در Ø®Ù?د دارÙ?د. اجراÙ? برÙ?اÙ?Ù? psql با
گزÙ?Ù?Ù? l- Ù?Ù?ز باعث Ù?شاÙ? دادÙ? Ù?Ù?ست تÙ?اÙ? پاÙ?گاÙ?Ù?اÙ? دادÙ? Ù?Ù?â??Ø´Ù?د.
Ù?Ù?Ú?Ù?Ù?Ù? Ù?اÙ?Ù? pgsql/src/tutorial/syscat.source Ù?Ù?ز Ù?رÙ?اÙ?Ù?اÙ? SELECT Ù?Ù? با استÙ?ادÙ?
از Ø¢Ù? Ù?Ù?â??تÙ?اÙ? اطÙ?اعات پاÙ?گاÙ? دادÙ? را استخراج Ù?رد Ø´Ø±Ø Ø¯Ø§Ø¯Ù? است.
4.8) Ú?را درخÙ?استÙ?اÙ? Ù?Ù? Ù?Ù?د اجرا Ù?Ù?â??Ø´Ù?Ù?د Ù?ا Ú?را از Ù?Ù?اÙ?Ù? Ù?ا استÙ?ادÙ? Ù?Ù?Ù?â??Ù?Ù?Ù?دØ?
بÙ? Ø·Ù?ر Ù?عÙ?Ù?Ù? براÙ? درخÙ?استÙ?ا از Ù?Ù?اÙ?Ù?â??Ù?ا استÙ?ادÙ? Ù?Ù?Ù?â??Ø´Ù?د. تÙ?Ù?ا در صÙ?رتÙ? از
Ù?Ù?اÙ?Ù?â??Ù?ا استÙ?ادÙ? Ù?Ù?â??Ø´Ù?د Ù?Ù? اÙ?دازÙ? جدÙ?Ù? از Ù?Ù? اÙ?دازÙ? ØØ¯Ø§Ù?Ù? بزرگتر باشد Ù? درخÙ?است
Ù?Ù? Ù?Ù?Ø· Ù?سÙ?تÙ? از ردÙ?Ù?â??Ù?اÙ? جدÙ?Ù? را اÙ?تخاب Ù?ردÙ? باشد. دÙ?Ù?Ù? اÙ?Ù? Ù?ار Ø¢Ù? است Ù?Ù?
دسترسÙ?â??Ù?اÙ? تصادÙ?Ù? بÙ? Ù?ارددÙ?سÙ? Ù?Ù? بÙ? خاطر Ù?Ù?اÙ?Ù?â??Ù?ا اÙ?جاد Ù?Ù?â??Ø´Ù?د Ù?Ù?Ù?Ù? است از
Ø®Ù?اÙ?دÙ? Ù?ستÙ?Ù?Ù? جدÙ?Ù? Ù?ا Ø®Ù?اÙ?دÙ? ترتÙ?بÙ? رÙ?Ù?ردÙ?ا Ù?Ù?دتر باشد.
براÙ? تعÙ?Ù?Ù? اÙ?Ù?Ù?Ù? از Ù?Ù?اÙ?Ù? استÙ?ادÙ? Ø´Ù?د Ù?ا Ø®Ù?رØ? PostgreSQL باÙ?د اطÙ?اعات Ø¢Ù?ارÙ? را
در Ù?Ù?رد Ù?Ù? جدÙ?Ù? بداÙ?د. اÙ?Ù? اطÙ?اعات تÙ?سط دستÙ?ر ANALYZE Ù? VACUUM ANALYZE بÙ? دست
Ù?Ù?â??Ø¢Ù?د. با استÙ?ادÙ? از اÙ?Ù? اطÙ?اعاتØ?â?? بÙ?Ù?Ù?Ù? ساز از تعداد ردÙ?Ù?â??Ù?اÙ? Ù?Ù? جدÙ?Ù? اطÙ?اع
Ù¾Ù?دا Ù?Ù?â??Ù?Ù?د Ù? بÙ?تر Ù?Ù?â??تÙ?اÙ?د تعÙ?Ù?Ù? Ù?Ù?د Ù?Ù? Ø¢Ù?ا از Ù?Ù?اÙ?Ù? استÙ?ادÙ? Ø´Ù?د Ù?ا Ø®Ù?ر.
اطÙ?اعات Ø¢Ù?ارÙ? Ù?Ù?Ú?Ù?Ù?Ù? براÙ? تعÙ?Ù?Ù? ترتÙ?ب اÙ?ØØ§Ù? Ù? رÙ?Ø´Ù?اÙ? اÙ?ØØ§Ù? بÙ? صÙ?رت بÙ?Ù?Ù?Ù? Ù?Ù?ز
Ù?اربرد دارد. جÙ?ع Ø¢Ù?رÙ? اطÙ?اعات Ø¢Ù?ارÙ? باÙ?د بÙ? صÙ?رت دÙ?رÙ?â??اÙ? Ù?Ù?زÙ?اÙ? با تغÙ?Ù?ر
دادÙ?â??Ù?اÙ? جدÙ?Ù? اÙ?جاÙ? Ø´Ù?د.
Ù?Ù?اÙ?Ù?â??Ù?ا بÙ? Ø·Ù?ر Ù?عÙ?Ù?Ù? Ù?Ù?راÙ? با دستÙ?ر ORDER BY بÙ? Ù?ار بردÙ? Ù?Ù?Ù?â??Ø´Ù?Ù?د. براÙ? Ù?Ù? جدÙ?Ù?
بزرگ Ù?Ù? Ù¾Ù?Ù?اÙ?Ø´ ترتÙ?بÙ? Ù?Ù?راÙ? با دستÙ?ر Ù?رتب سازÙ? از بÙ? Ù?ار بردÙ? Ù?Ù?اÙ?Ù?â??Ù?ا سرÙ?عتر
Ø®Ù?اÙ?د بÙ?د.
اÙ?ا اگر Ù?Ù?راÙ? با ORDER BYâ?? از LIMIT استÙ?ادÙ? Ø´Ù?د اغÙ?ب از Ù?Ù?اÙ?Ù?â??Ù?ا استÙ?ادÙ? Ù?Ù?â??Ø´Ù?د
Ú?Ù?Ù? Ù?Ù?Ø· Ù?سÙ?تÙ? از جدÙ?Ù? برگرداÙ?دÙ? Ù?Ù?â??Ø´Ù?د. در ØÙ?Ù?Ù?ت Ù?ر Ú?Ù?د تÙ?ابع ()MINâ?? Ù? ()MAX از
Ù?Ù?اÙ?Ù?â??Ù?ا استÙ?ادÙ? Ù?Ù?Ù?â??Ù?Ù?Ù?د Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù?Ù? با استÙ?ادÙ? از دستÙ?ر زÙ?ر با استÙ?ادÙ? از
Ù?Ù?اÙ?Ù?â??Ù?ا Ù? دستÙ?ر ORDER BY Ù? LIMITâ?? Ø? Ø¢Ù?Ù?ا را بÙ? دست Ø¢Ù?رÙ?Ù?.
SELECT col
FROM tab
ORDER BY col [ DESC ]
LIMIT 1;
اگر Ø´Ù?ا Ù?Ù?ر Ù?Ù?â??Ù?Ù?Ù?د Ù?Ù? بÙ?Ù?Ù?Ù? ساز سÙ?ستÙ? در اÙ?تخاب Ù¾Ù?Ù?اÙ?Ø´ ترتÙ?بÙ? اشتباÙ? Ù?ردÙ? است
با دستÙ?ر 'SET enable_seqscan TO 'off' Ù?Ù?â??تÙ?اÙ?Ù?د ببÙ?Ù?Ù?د Ø¢Ù?ا استÙ?ادÙ? از Ù?Ù?اÙ?Ù?â??Ù?ا
باعث اÙ?زاÙ?Ø´ سرعت درخÙ?استâ??Ù?ا Ø®Ù?اÙ?د شد Ù?ا Ø®Ù?ر.
استÙ?ادÙ? از Ù?Ù?اÙ?Ù?â??Ù?ا Ù?Ù?گاÙ?Ù? Ù?Ù? از عÙ?ائÙ? Ù?Ù?Ú?Ù? Ù?ظÙ?ر LIKE Ù? ~ استÙ?ادÙ? Ù?Ù?â??Ù?Ù?Ù?د Ù?Ù?Ø· در
بعضÙ? شراÙ?Ø· خاص Ù?Ù? در اÙ?Ù?جا ذÙ?ر شدÙ? است Ù?Ù?Ù?Ù? است:
ابتداÙ? رشتÙ? جستجÙ? باÙ?د بÙ? Ø·Ù?ر صرÙ?Ø Ù?شخص باشد براÙ? Ù?ثاÙ?:
- دستÙ?رات LIKE Ù?باÙ?د با عÙ?اÙ?ت % شرÙ?ع Ø´Ù?Ù?د
- اÙ?Ú¯Ù?Ù?اÙ? Ù?Ù?ظÙ?Ù? Ù?Ù? با ~ Ù?Ù?â??Ø¢Ù?د ØØªÙ?اÙ? باÙ?د با عÙ?اÙ?ت ^ شرÙ?ع Ø´Ù?د
رشتÙ? جستجÙ? Ù?باÙ?د با Ù?Ù? Ù?جÙ?Ù?عÙ? از Ù?اراÙ?ترâ??Ù?ا Ù?Ø«Ù? [a-e] شرÙ?ع Ø´Ù?د
جستجÙ?Ù?اÙ? غÙ?Ø±ØØ³Ø§Ø³ بÙ? Ù?تÙ? Ù?Ø«Ù? ILIKEâ?? Ù? *~ از Ù?Ù?اÙ?Ù?â??Ù?ا استÙ?ادÙ? Ù?Ù?Ù?â??Ù?Ù?Ù?د. در عÙ?ض
از تÙ?ابع Ù?Ù?اÙ?Ù?â??اÙ? Ù?Ù? در Ù?سÙ?ت 4.12 تÙ?ضÙ?Ø Ø¯Ø§Ø¯Ù? شد استÙ?ادÙ? Ù?Ù?â??Ù?Ù?Ù?د.
Ù?Ù?دار Ù¾Ù?Ø´ Ù?رض localeâ?? باÙ?د در initdb استÙ?ادÙ? Ø´Ù?د.
4.9) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? Ù?ØÙ?Ù? بررسÙ? درخÙ?است را تÙ?سط بÙ?Ù?Ù?Ù?â??ساز درخÙ?استÙ?ا Ù?شاÙ?دÙ? Ù?Ù?Ù?Ø?
راÙ?Ù?Ù?اÙ? دستÙ?ر EXPLAIN را Ù?گاÙ? Ù?Ù?Ù?د.
4.10) Ù?Ù?اÙ?Ù? R-treeâ?? Ú?Ù?ستØ?
از Ù?Ù?اÙ?Ù? R-Tree براÙ? اÙ?دÙ?س Ù?ردÙ? دادÙ?â??Ù?اÙ? Ù?اصÙ?Ù?â??اÙ? استÙ?ادÙ? Ù?Ù?â??Ø´Ù?د. Ù?Ù? Ù?Ù?اÙ?Ù? hash
Ù?Ù?Ù?â??تÙ?اÙ?د جستجÙ?Ù?اÙ? Ù?ØØ¯Ù?دÙ?â??اÙ? را اÙ?جاÙ? دÙ?د. Ù?Ù?اÙ?Ù? "B-tree" Ù?Ù?ز براÙ? اÙ?جاÙ? جستجÙ?Ù?
Ù?ØØ¯Ù?دÙ?â??اÙ? در Ù?Ù? جÙ?ت Ù?ابÙ? استÙ?ادÙ? است. اÙ?ا R-Tree Ù?Ù?â??تÙ?اÙ?د دادÙ?â??Ù?اÙ? Ú?Ù?د بعدÙ? را
Ù?Ù?ز پشتÙ?باÙ?Ù? Ù?Ù?د. براÙ? Ù?ثاÙ? اگر از Ù?Ù?اÙ?Ù? R-treeâ?? براÙ? Ú¯Ù?Ù?Ù? Point استÙ?ادÙ? Ø´Ù?د
سرعت درخÙ?استâ??Ù?اÙ?Ù? Ù?ظÙ?ر "select all points within a bounding rectangle" بÙ? Ù?راتب
اÙ?زاÙ?Ø´ Ù?Ù?â??Ù?ابد.
Ù?Ù?اÙ?Ù?â??اÙ? Ù?Ù? طراØÙ? R-tree را تÙ?ضÙ?Ø Ø¯Ø§Ø¯Ù? است
Guttman, A. "R-trees: A Dynamic Index Structure for Spatial Searching."
Proceedings of the 1984 ACM SIGMOD Int'l Conf on Mgmt of Data, 45-57.
R-treeâ?? Ù?Ù?â??تÙ?اÙ?د Ú?Ù?دضÙ?عÙ?Ù?ا Ù? Ú?Ù?د Ù?جÙ?Ù? را پشتÙ?باÙ?Ù? Ù?Ù?د. در تئÙ?رÙ?Ø? R-tree Ù?Ù?â??تÙ?اÙ?د
تعداد بعدÙ?اÙ? باÙ?اترÙ? را Ù?Ù?ز پشتÙ?باÙ?Ù? Ù?Ù?د. در عÙ?Ù? تÙ?سعÙ? R-treeâ?? Ù?Ù?از بÙ? Ù?ار
بÙ?شترÙ? دارد.
4.11) بÙ?Ù?Ù?Ù? ساز تÙ?Ù?Ù?Ù?Ù? درخÙ?است Ú?Ù?ستØ? (Genetic Query Optimizer)
استÙ?ادÙ? از GEQO سرعت بÙ?Ù?Ù?Ù? سازÙ? درخÙ?است را Ù?Ù?گاÙ?Ù?Ù?Ù? تعداد زÙ?ادÙ? جدÙ?Ù? را با
استÙ?ادÙ? از اÙ?Ú¯Ù?رÙ?تÙ? Ú?Ù?تÙ?Ù? اÙ?ØØ§Ù? Ù?Ù?â??Ù?Ù?Ù?Ù? اÙ?زاÙ?Ø´ Ù?Ù?â??دÙ?د.
4.12) Ú?Ú¯Ù?Ù?Ù? از عبارات Ù?Ù?ظÙ? براÙ? جستجÙ? استÙ?ادÙ? Ù?Ù?Ù?Ø? Ú?Ú¯Ù?Ù?Ù? جستجÙ?Ù?Ù? اÙ?جاÙ? دÙ?Ù? Ù?Ù?
ØØ³Ø§Ø³ بÙ? Ù?تÙ? Ù?باشدØ? Ú?Ú¯Ù?Ù?Ù? براÙ? Ù?Ù? جستجÙ?Ù? غÙ?ر ØØ³Ø§Ø³ بÙ? Ù?تÙ? از Ù?Ù?اÙ?Ù? استÙ?ادÙ? Ù?Ù?Ù?Ø?
براÙ? جستجÙ?Ù? عبارت Ù?Ù?ظÙ? از عÙ?Ù?گر ~â?? استÙ?ادÙ? Ù?Ù?â??Ù?Ù?Ù?Ù?. براÙ? جستجÙ?Ù? غÙ?ر ØØ³Ø§Ø³ بÙ? Ù?تÙ?
از عÙ?Ù?گر *~ Ù? Ù?ا ILIKEâ?? استÙ?ادÙ? Ù?Ù?â??Ù?Ù?Ù?Ù?.
رÙ?Ø´ دÙ?گر اÙ?جاÙ? جستجÙ?Ù? غÙ?ر ØØ³Ø§Ø³ بÙ? Ù?تÙ? در زÙ?ر Ù?شاÙ? دادÙ? شدÙ? است.
SELECT *
FROM tab
WHERE lower(col) = 'abc';
اÙ?Ù? از Ù?Ù?اÙ?Ù?â??Ù?اÙ? استاÙ?دارد استÙ?ادÙ? Ù?Ù?Ù?â??Ù?Ù?د. Ù?Ù?Ù? Ø´Ù?ا Ù?Ù? تÙ?اÙ?Ù?د با دستÙ?ر زÙ?ر Ù?Ù?
Ù?Ù?اÙ?Ù? اÙ?جاد Ù?Ù?Ù?د Ù? از Ø¢Ù? استÙ?ادÙ? Ù?Ù?Ù?د.
CREATE INDEX tabindex ON tab (lower(col));
4.13) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? در Ù?Ù? درخÙ?است تشخÙ?ص دÙ?Ù? Ù?Ù? Ù?Ù? Ù?Ù?Ù?د NULLâ?? استØ?
با استÙ?ادÙ? از تÙ?ابع IS NULL Ù? IS NOT NULL Ù?Ù?â??تÙ?اÙ?Ù?Ù? NULL بÙ?دÙ? Ù?Ù? Ù?Ù?Ù?د را تست
Ù?Ù?Ù?Ù?.
4.14) تÙ?اÙ?ت بÙ?Ù? Ú¯Ù?Ù?Ù?â??Ù?اÙ? Ù?ختÙ?Ù? character Ú?Ù?ستØ?
Type Internal Name Notes
--------------------------------------------------
VARCHAR(n) varchar اÙ?دازÙ?Ø? ØØ¯Ø§Ù?ثر Ø·Ù?Ù? را Ù?شاÙ? Ù?Ù? دÙ?د بدÙ?Ù? اضاÙ?Ù? شدÙ? Ù?اراÙ?تر اضاÙ?Ù?
CHAR(n) bpchar Ù?اراÙ?ترÙ?اÙ? بÙ?اÙ?Ù? براÙ? پر شدÙ? Ø·Ù?Ù? Ù?شخص شدÙ? استÙ?ادÙ? Ù?Ù?â??Ø´Ù?د
TEXT text ØØ¯Ø§Ù?ثر Ø·Ù?Ù? را Ù?شخص Ù?Ù?Ù?â??Ù?Ù?د
BYTEA bytea آراÙ?Ù?â??اÙ? از باÙ?ت با Ø·Ù?Ù? Ù?تغÙ?ر
"char" char Ù?Ù? Ù?اراÙ?تر
Ù?اÙ? داخÙ?Ù? Ú¯Ù?Ù?Ù?â??Ù?ا را در system catalogue â??Ù? بعضÙ? از Ù¾Ù?غاÙ?Ù?اÙ? خطا Ù?Ù?â??تÙ?اÙ? دÙ?د.
Ú?Ù?ار Ú¯Ù?Ù?Ù? اÙ?Ù? Ù?Ù?Ú¯Ù? از Ù?Ù?ع varlena Ù?ستÙ?د (4 باÙ?ت اÙ?Ù? رÙ?Ù? دÙ?سÙ? Ø·Ù?Ù? را Ù?شخص Ù?Ù?â??Ù?Ù?د
Ù?Ù? بÙ? دÙ?باÙ? Ø¢Ù? دادÙ?â??Ù?ا Ù?رار دارÙ?د.)â??بÙ?ابراÙ?Ù? Ù?ضاÙ? Ù?اÙ?عÙ? استÙ?ادÙ? شدÙ? رÙ?Ù? دÙ?سÙ? از
اÙ?دازÙ? تعرÙ?Ù? شدÙ? بÙ?شتر است. اÙ?ا اÙ?Ù? Ú¯Ù?Ù?Ù?â??Ù?ا را Ù?Ù?â??تÙ?اÙ? Ù?شردÙ? Ù?رد Ù?Ù? اÙ?Ù?Ù?ار باعث
Ù?Ù?â??Ø´Ù?د Ù?ضاÙ? Ù?Ù?ترÙ? رÙ?Ù? دÙ?سÙ? اشغاÙ? Ù?Ù?Ù?د.
براÙ? ذخÙ?رÙ? رشتÙ?â??Ù?اÙ? با Ø·Ù?Ù? Ù?تغÙ?ر(VARCHAR(nâ?? بÙ?ترÙ?Ù? اÙ?تخاب است. در اÙ?Ù? Ú¯Ù?Ù?Ù?
ØØ¯Ø§Ù?ثر Ø·Ù?Ù? رشتÙ? Ù?ØØ¯Ù?د است بر Ø®Ù?اÙ? text Ù?Ù? Ù?Ù?Ú? Ù?ØØ¯Ù?دÙ?تÙ? رÙ?Ù? ØØ¯Ø§Ù?ثر اÙ?دازÙ? رشتÙ?
Ù?Ù?Ù?â??گذارد.(در اÙ?Ù? Ú¯Ù?Ù?Ù? ØØ¯Ø§Ù?ثر Ø·Ù?Ù? Ù?Ù? رشتÙ? Ù?Ù? Ú¯Ù?گا باÙ?ت Ø®Ù?اÙ?د بÙ?د)
Ú¯Ù?Ù?Ù? (CHAR(n براÙ? ذخÙ?رÙ? دادÙ?â??Ù?اÙ? با Ø·Ù?Ù? Ù?Ù?ساÙ? است.Ù?Ù? Ú¯Ù?Ù?Ù?â??Ù? (CHAR(n با
Ù?اراÙ?ترÙ?اÙ? بÙ?اÙ?Ù? (خاÙ?Ù?) پر Ù?Ù?â??Ø´Ù?د تا بÙ? Ø·Ù?Ù? Ù?شخص شدÙ? برسد در ØØ§Ù?Ù?Ù?Ù? Ú¯Ù?Ù?Ù? VARCHAR
Ù?اراÙ?ترÙ?ا را بÙ? Ù?Ù?اÙ? صÙ?رت Ù?Ù? Ù?ستÙ?د ذخÙ?رÙ? Ù?Ù?â??Ù?Ù?د. Ú¯Ù?Ù?Ù? BYTEA براÙ? ذخÙ?رÙ? دادÙ?â??Ù?اÙ?
باÙ?Ù?رÙ? است بÙ? خصÙ?ص دادÙ?â??Ù?اÙ? باÙ?Ù?رÙ? Ù?Ù? شاÙ?Ù? باÙ?تâ??Ù?اÙ? NULL Ù?ستÙ?د. از Ù?ظر Ù?اراÙ?Ù?
تÙ?اÙ? اÙ?Ù? Ú¯Ù?Ù?Ù?â??Ù?ا Ù?Ù?ساÙ? Ù?ستÙ?د.
4.15.1) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? Ù?Ù? Ù?Ù?Ù?د سرÙ?اÙ? Ù?ا اÙ?زاÙ?Ø´Ù? اÙ?جاد Ù?Ù?Ù?Ø?
PostgreSQL از دادÙ?â??Ù?اÙ? سرÙ?اÙ? پشتÙ?باÙ?Ù? Ù?Ù?â??Ù?Ù?د. براÙ? اÙ?جاد Ù?Ù? Ù?Ù?Ù?د سرÙ?اÙ? (براÙ?
داشتÙ? Ù?Ù? Ù?Ù?Ù?د Ù?Ù?ØØµØ± بÙ? Ù?رد براÙ? Ù?ر ردÙ?Ù? )بÙ? رÙ?Ø´ زÙ?ر عÙ?Ù? Ù?Ù?Ù?د:
CREATE TABLE person (
id SERIAL,
name TEXT
);
دستÙ?ر باÙ?ا بÙ? Ø·Ù?ر اتÙ?Ù?اتÙ?Ú© بÙ? دستÙ?ر زÙ?ر تبدÙ?Ù? Ù?Ù?â??Ø´Ù?د:
CREATE SEQUENCE person_id_seq;
CREATE TABLE person (
id INT4 NOT NULL DEFAULT nextval('person_id_seq'),
name TEXT
);
براÙ? دÙ?دÙ? اطÙ?اعات بÙ?شتر بÙ? راÙ?Ù?Ù?اÙ? دستÙ?ر create_sequence Ù?راجعÙ? Ù?Ù?Ù?د. Ù?Ù?Ú?Ù?Ù?Ù?
Ù?Ù?â??تÙ?اÙ? از OIDâ??Ù?ر ردÙ?Ù? بÙ? عÙ?Ù?اÙ? Ù?Ù? Ù?Ù?دار Ù?Ù?ØØµØ± بÙ? Ù?رد استÙ?ادÙ? Ù?رد. اÙ?ا در اÙ?Ù?
ØØ§Ù?ت براÙ? dump Ù?ردÙ? Ù? reloadâ??Ù?ردÙ? پاÙ?گاÙ? دادÙ? باÙ?د دستÙ?ر pg_dumpsâ?? را با گزÙ?Ù?Ù?
o-â?? اجرا Ù?Ù?Ù?د.
4.15.2) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? Ù?Ù?دار Ù?Ù? درج سرÙ?اÙ?Ù? را بداÙ?Ù?Ø?
Ù?Ù? رÙ?Ø´ براÙ? گرÙ?تÙ? Ù?Ù?دار بعدÙ? Ù?Ù? Ù?Ù?Ù?د سرÙ?اÙ? استÙ?ادÙ? از تابع ()nextval است. در شبÙ?
Ù?Ù?دÙ? Ù?Ù? در اداÙ?Ù? Ø¢Ù?دÙ? است رÙ?Ø´ اÙ?جاÙ? اÙ?Ù? Ù?ار Ù?شاÙ? دادÙ? شدÙ? است:
new_id = execute("SELECT nextval('person_id_seq')");
execute("INSERT INTO person (id, name) VALUES (new_id, 'Blaise Pascal')");
با اجراÙ? دستÙ?ر Ù?Ù?Ù? Ù?Ù?دار جدÙ?د را در Ù?تغÙ?ر new_id Ù?Ù?ز Ø®Ù?اÙ?Ù?دداشت Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù?د Ø¢Ù?
را در بÙ?Ù?Ù? درخÙ?استâ??Ù?ا Ù?Ù?ز استÙ?ادÙ? Ù?Ù?Ù?د. تÙ?جÙ? داشتÙ? باشÙ?د Ù?Ù? Ù?اÙ? SEQUENCEÙ?Ù? Ù?Ù? بÙ?
Ø·Ù?ر اتÙ?Ù?اتÙ?Ù? اÙ?جاد شدÙ? است بÙ? صÙ?رت table_serialcolumn_seqâ?? Ø®Ù?اÙ?د بÙ?د. Ù?Ù? در Ø¢Ù?
tableâ?? Ù?اÙ? جدÙ?Ù? Ù? serialcolumn Ù?اÙ? Ù?Ù?Ù?د سرÙ?اÙ? جدÙ?Ù? Ù?Ù?â??باشد.
براÙ? دÙ?دÙ? Ù?Ù?دار Ù?سبت دادÙ? شدÙ? بÙ? Ù?Ù?Ù?د سرÙ?اÙ? Ù?Ù?ز Ù?Ù?â??تÙ?اÙ? از تابع () currval بÙ?
صÙ?رت زÙ?ر استÙ?ادÙ? Ù?رد.
execute("INSERT INTO person (name) VALUES ('Blaise Pascal')");
new_id = execute("SELECT currval('person_id_seq')");
Ù? سراÙ?جاÙ? Ø´Ù?ا Ù?Ù?â??تÙ?اÙ?Ù?د از Ù?Ù?دار OID Ù?Ù? خرÙ?جÙ? دستÙ?ر INSERT است براÙ? دÙ?دÙ? Ù?Ù?دار
Ù¾Ù?Ø´ Ù?رض استÙ?ادÙ? Ù?Ù?Ù?د. Ù?ر Ú?Ù?د اÙ?Ù? رÙ?Ø´ در Ù?Ù?Ù? Ù¾Ù?تÙ?رÙ?Ù?ا Ù?ابÙ? استÙ?ادÙ? Ù?Ù?ست Ù? ضÙ?Ù?
اÙ?Ù?Ù?Ù? Ù?Ù?Ù?د oidâ?? بعد از عدد 4 Ù?Ù?Ù?Ù?ارد دÙ?بارÙ? صÙ?ر Ù?Ù?â??Ø´Ù?د. در زباÙ? perl با استÙ?ادÙ?
از DBI Ù? DBD::Pg Ù?Ù?دار oidâ??را Ù?Ù?â??تÙ?اÙ?Ù?د بÙ? اÙ?Ù? Ø´Ù?Ù? استخراج Ù?Ù?Ù?د: بعد از اجراÙ?
()st->execute$ Ù?Ù?دار oidâ?? در Ù?تغÙ?ر sth->pg_oid_status$ ذخÙ?رÙ? Ø®Ù?اÙ?د شد.
4.15.3) Ø¢Û?ا تÙ?ابع ()nextval Ù? ()currval Ù?Ù?جر بÙ? اÛ?جاد شراÛ?Ø· race براÛ? ساÛ?ر
کاربراÙ? Ù?Û? Ø´Ù?Ù?دØ?
Ø®Û?رØ? استÙ?ادÙ? از اÛ?Ù? تÙ?ابع شراÛ?Ø· race را بÙ? Ù?جÙ?د Ù?Ù?Û? Ø¢Ù?رد.
4.15.4) Ú?را اعداد سرÛ?اÙ?Û? Ù?ربÙ?Ø· بÙ? تراکÙ?Ø´Ù?اÛ? abort شدÙ? Ù?جدداÙ? استÙ?ادÙ? Ù?Ù?Û? Ø´Ù?دØ?
Ú?را بÛ?Ù? اعداد سرÛ?اÙ?Û? Û?Ú© Ù?اصÙ?Ù? خاÙ?Û? اÛ?جاد Ù?Û? Ø´Ù?دØ?
براÛ? باÙ?ا بردÙ? اÙ?کاÙ? اجراÛ? Ù?Ù?زÙ?اÙ? تراکÙ?Ø´Ù?اØ? اعداد سرÛ?اÙ?Û? بÙ? Ù?ØØ¶ اجراÛ? تراکÙ?Ø´ بÙ?
Ø¢Ù?Ù?ا تخصÛ?ص Ù?Û? Û?ابد در اÛ?Ù? ØØ§Ù?ت اگر بعضÛ? از تراکÙ?Ø´Ù?ا abort Ø´Ù?Ù?د بÛ?Ù? اعداد سرÛ?اÙ?Û?
استÙ?ادÙ? شدÙ? Û?Ú© Ù?اصÙ?Ù? خاÙ?Û? بÙ? Ù?جÙ?د Ù?Û? Ø¢Û?د.
4.16) OID Ù? TID Ú?Ù? Ù?ستÙ?دØ?
OID راÙ? ØÙ? PostgreSQL براÛ? داشتÙ? Û?Ú© Ø´Ù?اسÙ? Ù?Ù?ØØµØ± بÙ? Ù?رد براÛ? Ù?ر ردÛ?Ù? است. Ù?ر ردÛ?Ù?
جدÛ?دÛ? Ú©Ù? اÛ?جاد Ù?Û? Ø´Ù?د Û?Ú© OID Ù?Ù?ØØµØ± بÙ? Ù?رد بÙ? Ø¢Ù? اختصاص Ù?Û? Û?ابد. تÙ?اÙ? OIDÙ?اÛ?Û? Ú©Ù?
در ØÛ?Ù? initdb اÛ?جاد Ù?Û? Ø´Ù?Ù?د از 16384 Ú©Ù?تر Ù?ستÙ?د Ù? OIDÙ?اÛ?Û? بعداÙ? تÙ?Ù?Û?د Ù?Û? Ø´Ù?د از
اÛ?Ù? عدد بزرگتر Ø®Ù?اÙ?د بÙ?د. Ù?کتÙ? Ù?Ù?Ù? Ø¢Ù? است Ú©Ù? OIDÙ?ا Ù?Ù? تÙ?Ù?ا در Û?Ú© جدÙ?Ù? شبÛ?Ù?
Ù?Û?ستÙ?د بÙ?Ú©Ù? در Ú©Ù? پاÛ?گاÙ? دادÙ? Ù?Û?Ú? دÙ? ردÛ?Ù?Û? داراÛ? OID Û?کساÙ? Ù?Ø®Ù?اÙ?د بÙ?د.
PostgreSQL از OID در سÛ?ستÙ? داخÙ?Û? Ø®Ù?د براÛ? اÛ?جاد ارتباط بÛ?Ù? ردÛ?Ù?Ù?اÛ? جداÙ?Ù? Ù?ختÙ?Ù?
استÙ?ادÙ? Ù?Û? Ú©Ù?د. تÙ?صÛ?Ù? Ù?Û? Ø´Ù?د Ú©Ù? Û?Ú© ستÙ?Ù? از Ù?Ù?ع OID براÛ? ذخÛ?رÙ? اÛ?Ù? Ù?Û?Ù?د در جدÙ?Ù?
اÛ?جاد Ú©Ù?Û?د. ساختÙ? Û?Ú© Ù?Ù?اÛ?Ù? براÛ? اÛ?Ù? Ù?Û?Ù?د باعث دسترسÛ? سرÛ?عتر بÙ? Ø¢Ù? Ø®Ù?اÙ?د شد.
تÙ?اÙ? پاÛ?گاÙ?Ù?اÛ? دادÙ? در PostgreSQL براÛ? گرÙ?تÙ? OID جدÛ?د از Û?Ú© Ù?اØÛ?Ù? Ù?رکزÛ? استÙ?ادÙ?
Ù?Û? Ú©Ù?د. Ù?Ù?Û? اگر بخÙ?اÙ?Û?Ù? OID را بÙ? رÙ?Ø´ دÛ?گرÛ? بگÛ?رÛ?Ù? Ù? Û?ا اÛ?Ù?Ú©Ù? در ØÛ?Ù? Ú©Ù¾Û? کردÙ? Û?Ú©
جدÙ?Ù? بخÙ?اÙ?Û?Ù? OIDÙ?اÛ? اصÙ?Û? Ø¢Ù? تغÛ?Û?ر Ù?Ú©Ù?د بÙ? رÙ?Ø´ زÛ?ر Ù?Û? تÙ?اÙ?Û?Ù? عÙ?Ù? Ú©Ù?Û?Ù?:
CREATE TABLE new_table(mycol int);
SELECT oid AS old_oid, mycol INTO tmp_table FROM old_table;
COPY tmp_table TO '/tmp/pgtable';
COPY new_table WITH OIDS FROM '/tmp/pgtable';
DROP TABLE tmp_table;
OID Û?Ú© عدد صØÛ?Ø 4 باÛ?تÛ? است Ù? بÙ?ابراÛ?Ù? ØØ¯Ø§Ú©Ø«Ø± Ù?Ù?دار Ø¢Ù? 4 Ù?Û?Ù?Û?ارد Ø®Ù?اÙ?د بÙ?د Ù? بعد
از Ø¢Ù? Ù?Ù?دار Ø¢Ù? سررÛ?ز Ø®Ù?اÙ?د شد. اÙ?بتÙ? تا Ú©Ù?Ù?Ù? براÛ? کسÛ? اÛ?Ù? اتÙ?اÙ? Ù?Û?Ù?تادÙ? است Ù?
تصÙ?Û?Ù? گرداÙ?دگاÙ? PostgreSQL Ø¢Ù? است Ú©Ù? Ù?بÙ? از Ø¢Ù?Ú©Ù? اÛ?Ù? اتÙ?اÙ? رخ دÙ?د اÛ?Ù? Ù?Ø´Ú©Ù? را
برطرÙ? Ú©Ù?Ù?د.
TIDÙ?ا براÛ? Ø´Ù?اساÛ?Û? Ù?ØÙ? Ù?Û?زÛ?Ú©Û? Û?Ú© ردÛ?Ù? بر اساس بÙ?Ù?Ú© Ù? Ø¢Ù?ست Ù?Û? باشد. TIDÙ?ا بعد از
تغÛ?Û?ر Ù¾Û?دا کردÙ? Û?Ú© ردÛ?Ù? Ù? Û?ا بازخÙ?اÙ?Û? Ø¢Ù? عÙ?ض Ù?Û? Ø´Ù?Ù?د. TIDÙ?ا تÙ?سط Ù?Ù?اÛ?Ù? Ù?ا
استÙ?ادÙ? Ù?Û? Ø´Ù?Ù?د.
4.17) Ù?عÙ?Ù? بعضÙ? از ترÙ?Ù?ا Ù? Ù?Ù?Ù?اتÙ? Ù?Ù? در PostgreSQLâ?? استÙ?ادÙ? Ù?Ù?â??Ø´Ù?د Ú?Ù?ستØ?
Ù?Û?ست برخÛ? از ترÙ?Ù?ا Ù? Ú©Ù?Ù?اتÛ? Ú©Ù? استÙ?ادÙ? Ù?Û? Ø´Ù?Ù?د:
table, relation, class :Ú©Ù?اسØ? رابطÙ?Ø? جدÙ?Ù?
row, record, tuple Ú?Ù?دتاÛ?Û?Ø? رکÙ?ردØ? ردÛ?Ù?
column, field, attribute صÙ?تØ? Ù?Û?Ù?دØ? ستÙ?Ù?
retrieve, select اÙ?تخابØ? Ø®Ù?اÙ?دÙ?
replace, updateبÙ? رÙ?ز کردÙ?Ø? جاÛ?گزÛ?Ù?Û?
append, insert درجØ? اضاÙ?Ù? کردÙ?
OID, serial value Ù?Ù?دار سرÛ?اÙ?
portal, cursor
range variable, table name, table alias
Û?Ú© Ù?Û?ست عÙ?Ù?Ù?Û? از ترÙ?Ù?اÛ? Ù?Ù?رد استÙ?ادÙ? در پاÛ?گاÙ? دادÙ? در آدرس
http://hea-www.harvard.edu/MST/simul/software/docs/pkgs/pgsql/glossary/glossary.htm
Ù?جÙ?د دارد.
4.18) Ú?را Ù?Ù? خطاÙ? "ERROR: Memory exhausted in AllocSetAlloc" Ù?Ù?â??Ú¯Ù?رÙ?Ø?
اÛ?Ù? خطا Ø§ØØªÙ?اÙ?اÙ? Û?ا بÙ? خاطر تÙ?اÙ? شدÙ? ØØ§Ù?ظÙ? Ù?جازÛ? سÛ?ستÙ? Ø´Ù?است Ù? Û?ا اÛ?Ù?Ú©Ù? کرÙ?Ù?
براÛ? برÙ?اÙ?Ù? Ù?ا در Ù?Ù?رد Ù?Û?زاÙ? استÙ?ادÙ? از ØØ§Ù?ظÙ? Ù?جازÛ? Ù?ØØ¯Ù?دÛ?ت اعÙ?اÙ? کردÙ? است. Ù?بÙ?
از اجراÛ? برÙ?اÙ?Ù? اصÙ?Û? Û?Ú©Û? از دستÙ?رات زÛ?ر را اجرا Ú©Ù?Û?د.
ulimit -d 262144
limit datasize 256m
بستÙ? بÙ? Ù?Ù?ع Ø´Ù? Û?Ú©Û? از اÛ?Ù? دستÙ?رات Ù?Ù?Ú©Ù? است با Ù?Ù?Ù?Ù?Û?ت اجرا Ø´Ù?د. با اجراÛ? Ø¢Ù? دستÙ?ر
Ù?ØØ¯Ù?دÛ?ت ØØ§Ù?ظÙ? Ù?جازÛ? براÛ? برÙ?اÙ?Ù? Ù?ا برداشتÙ? شدÙ? Ù? با اÛ?Ù? کار Ø§ØØªÙ?اÙ?اÙ? درخÙ?استÛ? Ú©Ù?
Ù?بÙ?اÙ? خطا Ù?Û? دادÙ? است اجرا Ø®Ù?اÙ?د شد.
4.19) از Ù?جا تشخÙ?ص دÙ?Ù? Ù?Ù? Ù?Ù?راÙ?Ø´ Ù?ا Ù?سخÙ? PostgreSQLÙ?Ù? Ù?Ù? Ù?Ù? استÙ?ادÙ? Ù?Ù?â??Ù?Ù?Ù? Ú?Ù?ستØ?
با اجراÛ? دستÙ?ر ()SELECT version
4.20) Ú?را ØÛ?Ù? اجراÛ? عÙ?Ù?Û?ات رÙ?Û? large-objectÙ?ا خطاÛ? "invalid large obj
descriptor"بÙ? Ù?جÙ?د Ù?Û? Ø¢Û?دØ?
Ø´Ù?ا باÛ?د Ù?بÙ? از شرÙ?ع دستÙ?راتÛ? Ú©Ù? با large-objectÙ?ا کار Ù?Û? Ú©Ù?Ù?د BEGIN Ù? بعد از
Ø¢Ù?Ù?ا Ù?Ù? Û?Ú© END بگذارÛ?د. در ØØ§Ù? ØØ§Ø¶Ø± PostgreSQL Ù?Ù?دÙ? large-objectÙ?ا را در زÙ?اÙ?
Ù?Ù?اÛ?Û? شدÙ? تراکÙ?Ø´ (commitشدÙ?) Ù?Û? بÙ?دد. بÙ? Ù?Ù?Û?Ù? دÙ?Û?Ù? اÙ?Ù?Û?Ù? تÙ?اش براÛ? اÙ?جاÙ? Ù?ر کارÛ?
با Ù?Ù?دÙ? Ù?Ù?جر بÙ? خطاÛ? invalid large obj descriptor Ø®Ù?اÙ?د شد. براÛ? جÙ?Ù?Ú¯Û?رÛ? از اÛ?Ù?
خطا ØØªÙ?اÙ? باÛ?د از Û?Ú© تراکÙ?Ø´ استÙ?ادÙ? Ú©Ù?Û?د. اÛ?Ù? کار Ù?Ù?اÙ?Ø·Ù?ر Ú©Ù? Ù?بÙ?اÙ? Ú¯Ù?تÙ? شد با
استÙ?ادÙ? از Ù?رار دادÙ? BEGIN Ù? END در ابتدا Ù? اÙ?تÙ?اÛ? دستÙ?رات اÙ?جاÙ? Ù?Û? Ø´Ù?د.
اگر اÛ?Ù? خطا را در ØÛ?Ù? استÙ?ادÙ? از Û?Ú© دراÛ?Ù?ر ODBC درÛ?اÙ?ت کردÛ?د Ø§ØØªÙ?اÙ?اÙ? باÛ?د اÛ?Ù?
دستÙ?ر را اجرا Ú©Ù?Û?د: set auto-commit off
4.21) Ú?Ú¯Ù?Ù?Ù? Ù?Ù? ستÙ?Ù? اÙ?جاد Ù?Ù?Ù? Ù?Ù? Ù?Ù?دار زÙ?اÙ? جارÙ? را بÙ? عÙ?Ù?اÙ? Ù?Ù?دار Ù¾Ù?Ø´â??Ù?رض داشتÙ?
باشدØ?
از CURRENT_TIMESTAMP استÙ?ادÙ? Ú©Ù?Û?د در Ù?ثاÙ? زÛ?ر Ù?ØÙ?Ù? اÙ?جاÙ? اÛ?Ù? کار Ù?شاÙ? دادÙ? شدÙ?
است:
CREATE TABLE test (x int, modtime timestamp DEFAULT CURRENT_TIMESTAMP );
4.22) Ú?را "زÙ?ر درخÙ?استÙ?اÙ?Ù?" Ù?Ù? از IN استÙ?ادÙ? Ù?Ù?â??Ù?Ù?Ù?د Ù?Ù?د Ù?ستÙ?دØ?
در Ù?سخÙ? Ù?اÛ? Ù?بÙ? از 7.4 عÙ?Ù? اÙ?ØØ§Ù? زÛ?ر درخÙ?است Ù? درخÙ?است اصÙ?Û? بÙ? اÛ?Ù? صÙ?رت اÙ?جاÙ? Ù?Û?
Ø´Ù?د Ú©Ù? Ù?تاÛ?ج بÙ? دست Ø¢Ù?دÙ? از زÛ?ر درخÙ?است بÙ? صÙ?رت ترتÛ?بÛ? براÛ? Ù?ر ردÛ?Ù? اعÙ?اÙ? Ù?Û?
Ø´Ù?د. اگر زÛ?ردرخÙ?است ردÛ?Ù? Ù?اÛ? Ú©Ù?Û? را بÙ? عÙ?Ù?اÙ? خرÙ?جÛ? برگرداÙ?د Ù? درخÙ?است بÛ?رÙ?Ù?Û?
ردÛ?Ù? Ù?اÛ? زÛ?ادÛ? را شاÙ?Ù? Ø´Ù?د استÙ?ادÙ? از IN بÙ?ترÛ?Ù? رÙ?Ø´ است در غÛ?ر اÛ?Ù?صÙ?رت بÙ?تر است
از EXISTS استÙ?ادÙ? Ø´Ù?د
SELECT *
FROM tab
WHERE col IN (SELECT subcol FROM subtab);
بÙ?:
SELECT *
FROM tab
WHERE EXISTS (SELECT subcol FROM subtab WHERE subcol = col);
براÛ? اجراÛ? سرÛ?ع اÛ?Ù? درخÙ?است باÛ?د براÛ? ستÙ?Ù? subcol Ù?Ù?اÛ?Ù? اÛ?جاد شدÙ? باشد.
در Ù?سخÙ? Ù?اÛ? بعد از 7.4 IN براÛ? اÙ?ØØ§Ù? از Ù?Ù?اÙ? تکÙ?Û?Ú© Ù¾Û?Ú?Û?دÙ? Ù?Ù?رد استÙ?ادÙ? در
دستÙ?رات Ù?عÙ?Ù?Ù?Û? استÙ?ادÙ? Ù?Û? Ú©Ù?د Ù? بÙ?ابراÛ?Ù? استÙ?ادÙ? از Ø¢Ù? Ù?سبت بÙ? EXISTS ارجØÛ?ت
دارد.
4.23) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? Ù?Ù? اÙ?ØØ§Ù? خارجÙ? (outer join) اÙ?جاÙ? دÙ?Ù?Ø?
براÛ? اÙ?جاÙ? اÙ?ØØ§Ù? خارجÛ? بÙ? رÙ?Ø´ زÛ?ر عÙ?Ù? Ú©Ù?Û?د:
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 استÙ?ادÙ? Ø´Ù?د Ù?تÛ?جÙ? بر
عکس است. Û?عÙ?Û? ردÛ?Ù?Ù?اÛ? t2 Ú©Ù? Ù?ظÛ?ر Ø¢Ù?Ù?ا در t1 Ù?باشد را Ù?شاÙ? Ù?Û? دÙ?د Ù? اگر از FULL
استÙ?ادÙ? Ø´Ù?د Ù?تÛ?جÙ? Ù?Ù? شاÙ?Ù? ردÛ?Ù?Ù?اÛ? t1 است Ù? Ù?Ù? شاÙ?Ù? ردÛ?Ù?Ù?اÛ? t2. استÙ?ادÙ? از Ú©Ù?Ù?Ù?
OUTER اختÛ?ارÛ? است Ú?را Ú©Ù? اÛ?Ù? Ú©Ù?Ù?Ù? بÙ? Ø·Ù?ر ضÙ?Ù?Û? در دستÙ?رÙ?اÛ? LEFT, RIGHT, FULL Ù?جÙ?د
دارد.
در Ù?سخÙ? Ù?اÛ? Ù?بÙ?Û? پاÛ?گاÙ? دادÙ? Ù?Û? تÙ?اÙ?Û?Ù? اÙ?ØØ§Ù? خارجÛ? را بÙ? Ú©Ù?Ú© دستÙ?رÙ?اÛ? UNION, NOT
IN شبÛ?Ù? سازÛ? Ú©Ù?Û?Ù?. اÛ?Ù? کار در Ù?ثاÙ? زÛ?ر Ù?شاÙ? دادÙ? شدÙ? است:
SELECT tab1.col1, tab2.col2
FROM tab1, tab2
WHERE tab1.col1 = tab2.col1
UNION ALL
SELECT tab1.col1, NULL
FROM tab1
WHERE tab1.col1 NOT IN (SELECT tab2.col1 FROM tab2)
ORDER BY col1
4.24) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ? درخÙ?استÙ?اÙ?Ù? از Ú?Ù?د پاÙ?گاÙ? دادÙ? تÙ?Ù?Ù?د Ù?ردØ?
در ØØ§Ù? ØØ§Ø¶Ø± اÛ?Ù? کار اÙ?کاÙ? پذÛ?ر Ù?Û?ست. PostgreSQL Ù?Ù?Ø· اÙ?کاÙ? درخÙ?است از پاÛ?گاÙ? دادÙ?
اÛ? را Ù?Û? دÙ?د Ú©Ù? در ØØ§Ù? ØØ§Ø¶Ø± بÙ? Ø¢Ù? Ù?تصÙ? باشÛ?د Ù? Ù?Ù?Û?â??تÙ?اÙ? بÙ? Ø·Ù?ر Ù?Ù?زÙ?اÙ? از دÙ?
پاÛ?گاÙ? دادÙ? استÙ?ادÙ? کرد. اÙ?بتÙ? Û?Ú© برÙ?اÙ?Ù? کاربردÛ? Ø®Ù?د Ù?Û? تÙ?اÙ?د بÙ? Ø·Ù?ر Ù?Ù?زÙ?اÙ? دÙ?
پاÛ?گاÙ? دادÙ? را Ù?Ù?رد استÙ?ادÙ? Ù?رار دادÙ? Ù? Ù?تاÛ?ج را با Ù?Ù? ترکÛ?ب Ú©Ù?د Ù?Ù?Û? Ù?Ù?Û? تÙ?اÙ?د
در Û?Ú© درخÙ?است بÙ? Ù?ر دÙ? پاÛ?گاÙ? دادÙ? رجÙ?ع Ú©Ù?د.
4.25) Ú?Ú¯Ù?Ù?Ù? خرÙ?جÙ? Ù?Ù? تابع Ù?Ù?â??تÙ?اÙ?د Ú?Ù?د ردÙ?Ù? Ù?ا ستÙ?Ù? باشدØ?
در Ù?سخÙ? 7.3 خرÙ?جÛ? Û?Ú© تابع Ù?Û? تÙ?اÙ?د Ú?Ù?د ردÛ?Ù? Û?ا Ú?Ù?د ستÙ?Ù? باشد. براÛ? دÛ?دÙ? اطÙ?اعات
بÛ?شتر بÙ? ساÛ?ت زÛ?ر Ù?راجعÙ?
Ú©Ù?Û?د:http://techdocs.postgresql.org/guides/SetReturningFunctions
4.26) در تÙ?ابع PL/PgSQL Ú?را Ù?Ù?Ù?â??تÙ?اÙ? با اطÙ?Ù?Ù?اÙ? جداÙ?Ù? Ù?Ù?Ù?ت را اÙ?جاد Ù?ا ØØ°Ù? Ù?ردØ?
PL/PgSQL Ù?ØØªÙ?اÛ? تÙ?ابع را ذخÛ?رÙ? (cache) Ù?Û? Ú©Ù?د. Û?Ú© اثر بد جاÙ?بÛ? اÛ?Ù? کار Ø¢Ù? است Ú©Ù?
اگر در تابع از Û?Ú© جدÙ?Ù? Ù?Ù?Ù?ت استÙ?ادÙ? Ø´Ù?د Ù? بعداÙ? Ø¢Ù? جدÙ?Ù? ØØ°Ù? Ù? Û?Ú© جدÙ?Ù? جدÛ?د بÙ?
جاÛ? Ø¢Ù? اÛ?جاد Ø´Ù?دØ? در Ù?راخÙ?اÙ?Û? Ù?جدد Ø¢Ù? تابعØ? Ù?ØØªÙ?اÛ? ذخÛ?رÙ? شدÙ? تابع Ù?Ù?Ù?ز بÙ? جدÙ?Ù?
Ù?دÛ?Ù?Û? اشارÙ? Ù?Û? Ú©Ù?د Ù? بÙ?ابراÛ?Ù? اجراÛ? تابع با اشکاÙ? Ù?Ù?اجÙ? Ù?Û? Ø´Ù?د. راÙ? ØÙ? اÛ?Ù? Ù?Ø´Ú©Ù?
Ø¢Ù? است Ú©Ù? براÛ? جداÙ?Ù? Ù?Ù?Ù?ت از دستÙ?ر EXECUTE استÙ?ادÙ? Ø´Ù?د Ú©Ù? اÛ?Ù? کار سبب Ù?Û? Ø´Ù?د Ú©Ù?
درخÙ?است براÛ? Ù?ر بار اجرا Ù?جدداÙ? Ù¾Û?Ù?اÛ?Ø´ Ù? تÙ?سÛ?ر Ø´Ù?د.
4.27) Ú?Ù? گزÙ?Ù?Ù?â??Ù?اÙ?Ù? براÙ? تÙ?رار (replication) Ù?جÙ?د داردØ?
There are several master/slave replication options available. These allow only
the master to make database changes and the slave can only do database reads.
The bottom of http://gborg.PostgreSQL.org/genpage?replication_research lists
them. A multi-master replication solution is being worked on at
http://gborg.PostgreSQL.org/project/pgreplication/projdisplay.php.
4.28) Ú?Ù? گزÙ?Ù?Ù?â??Ù?اÙ?Ù? براÙ? رÙ?زÙ?گارÙ? Ù?جÙ?د داردØ?
contrib/pgcrypto شاÙ?Ù? تÙ?ابع رÙ?زÙ?گارÛ? زÛ?ادÛ? است Ú©Ù? Ù?Û? تÙ?اÙ? از Ø¢Ù?Ù?ا در دستÙ?رات
SQL استÙ?ادÙ? کرد.
براÛ? رÙ?ز کردÙ? ارتباط بÛ?Ù? client Ù? server پاÛ?گاÙ? دادÙ? ØØªÙ?اÙ? گزÛ?Ù?Ù? SSL را بر
رÙ?Û? پاÛ?گاÙ? دادÙ? Ù?عاÙ? Ú©Ù?Û?Ù?.
در Ù?سخÙ? 7.3 بÙ? بعد Ú©Ù?Ù?ات عبÙ?ر کاربراÙ? بÙ? Ø·Ù?ر اتÙ?Ù?اتÛ?Ú© بÙ? صÙ?رت رÙ?ز شدÙ? ذخÛ?رÙ? Ù?Û?
Ø´Ù?د Ù?Ù?Û? در Ù?سخÙ? Ù?اÛ? Ù?بÙ?Û? باÛ?د گزÛ?Ù?Ù? PASSWORD_ENCRYPTION را در
Ù?اÛ?Ù?postgresql.conf Ù?عاÙ? Ú©Ù?Û?Ù?.
Ù?Û? تÙ?اÙ? پاÛ?گاÙ?Ù?اÛ? دادÙ? را رÙ?Û? Û?Ú© Ù?اÛ?Ù? سÛ?ستÙ? رÙ?زشدÙ? Ù?گاÙ?دارÛ? کرد
Extending PostgreSQL
5.1) Ù?Ù? Ù?Ù? تابع Ù?Ù?شتÙ?â??اÙ?. Ú?Ú¯Ù?Ù?Ù? Ø¢Ù? را در psql اجرا Ù?Ù?Ù?Ø? Ú?را با اجراÙ? Ø¢Ù? core
dump Ù?Ù?â??Ú¯Ù?رÙ?Ø?
دÙ?اÛ?Ù? Ù?ختÙ?Ù?Û? Ù?Û? تÙ?اÙ?د باعث برÙ?ز اÛ?Ù? Ù?Ø´Ú©Ù? Ø´Ù?د. اÙ?ا Ù?بÙ? از Ù?Ù?Ù?Ø? تابع Ø®Ù?د را بÙ?
صÙ?رت جدا تست Ú©Ù?Û?د.
5.2) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? در تÙ?Ù?Ù?د Ù?Ù?عâ??Ù?ا Ù? تÙ?ابع جدÙ?د Ù? جاÙ?ب براÙ? PostgreSQLâ?? Ù?Ù?Ù?ارÙ?
Ù? Ù?شارÙ?ت داشتÙ? باشÙ?Ø?
کد Ø®Ù?د را بÙ? گرÙ?Ù? پستÛ? pgsql-hackers ارساÙ? Ú©Ù?Û?د.
5.3) Ú?Ú¯Ù?Ù?Ù? Ù?Ù?â??تÙ?اÙ?Ù? Ù?Ù? تابع بÙ? زباÙ? C بÙ?Ù?Ù?سÙ? Ù?Ù? خرÙ?جÙ? Ø¢Ù? Ù?Ù? â??tuple (Ú?Ù?د تاÙ?Ù?)
باشدØ?
در Ù?سخÙ? Ù?اÛ? 7.3 بÙ? بعد Û?Ú© تابع Ù?Û? تÙ?اÙ?د Û?Ú© جدÙ?Ù? را بÙ? عÙ?Ù?اÙ? خرÙ?جÛ? برگرداÙ?د. اÛ?Ù?
Ù?Û?Ú?Ú¯Û? در تÙ?ابعÛ? Ú©Ù? بÙ? زباÙ?Ù?اÛ? C Ù? PL/PgSQL Ù?Ù?شتÙ? Ù?Û?â??Ø´Ù?Ù?د بÙ? Ø·Ù?ر کاÙ?Ù? Ù?جÙ?د دارد.
راÙ?Ù?Ù?ا برÙ?اÙ?Ù? Ù?Ù?Û?ساÙ? را Ù?طاÙ?عÙ? Ú©Ù?Û?د. Û?Ú© Ù?ثاÙ? از Ù?ØÙ?Ù? برگرداÙ?دÙ? Û?Ú© جدÙ?Ù? بÙ? عÙ?Ù?اÙ?
خرÙ?جÛ? در contrib/tablefunc Ø¢Ù?دÙ? است.
5.4) Ù?Ù? Ù?Ù? Ù?اÙ?Ù? Ù?Ù?بع را عÙ?ض Ù?ردÙ? اÙ? Ú?را در عÙ?Ù?Ù?ات Ù?اÙ?Ù¾Ù?Ù? Ù?جدد Ø¢Ù?Ø? تغÙ?Ù?ر دÙ?دÙ?
Ù?Ù?Ù?â??Ø´Ù?دØ?
Makefile براÛ? Ù?اÛ?Ù?Ù?اÛ? include شدÙ? Ù?ابستگÛ?Ù?ا را بÙ? درستÛ? Ù?شاÙ? Ù?Ù?Û? دÙ?د. براÛ?
اطÙ?Û?Ù?اÙ? از اÛ?Ù?Ú©Ù? Ù?اÛ?Ù?Û? Ú©Ù? عÙ?ض کردÙ? اÛ?د ØØªÙ?اÙ? دÙ?بارÙ? کاÙ?Ù¾Û?Ù? Ù?Û?â??Ø´Ù?د دستÙ?ر make
clean را اجرا Ú©Ù?Û?د. اگر از کاÙ?Ù¾Û?Ù?ر gcc استÙ?ادÙ? Ù?Û? Ú©Ù?Û?د Ù?Û? تÙ?اÙ?Û?د از گزÛ?Ù?Ù?
enable-depend-- در Ù?Ù?Ù?ع اجراÛ? برÙ?اÙ?Ù? configure استÙ?ادÙ? Ú©Ù?Û?د اÛ?Ù? گزÛ?Ù?Ù? باعث Ù?Û?
Ø´Ù?د Ú©Ù? Ù?ابستگÛ?Ù?ا بÙ? Ø·Ù?ر اتÙ?Ù?اتÛ?Ú© تÙ?Ù?Û?د Ø´Ù?د.
Home |
Main Index |
Thread Index