×Ô´ÓMySQL±»OracleÊÕ¹ºÒÔºó£¬PostgreSQLÖð½¥³ÉΪ¿ªÔ´¹ØϵÐÍÊý¾Ý¿âµÄÊ×Ñ¡¡£±¾ÎĽéÉÜPostgreSQLµÄ°²×°ºÍ»ù±¾Ó÷¨£¬¹©³õ´ÎʹÓÃÕßÉÏÊÖ¡£ÒÔÏÂÄÚÈÝ»ùÓÚDebian²Ù×÷ϵͳ£¬ÆäËû²Ù×÷ϵͳʵÔÚûÓо«Á¦¼æ¹Ë£¬µ«ÊǴ󲿷ÖÄÚÈÝÓ¦¸ÃÆÕ±éÊÊÓᣠ|
Ê×ÏÈ£¬°²×°PostgreSQL¿Í»§¶Ë¡£
sudo apt-get install postgresql-client
È»ºó£¬°²×°PostgreSQL·þÎñÆ÷¡£
sudo apt-get install postgresql
Õý³£Çé¿öÏ£¬°²×°Íê³Éºó£¬PostgreSQL·þÎñÆ÷»á×Ô¶¯ÔÚ±¾»úµÄ5432¶Ë¿Ú¿ªÆô¡£
Èç¹û»¹Ï밲װͼÐιÜÀí½çÃ棬¿ÉÒÔÔËÐÐÏÂÃæÃüÁµ«ÊDZ¾ÎIJ»Éæ¼°Õâ·½ÃæÄÚÈÝ¡£
sudo apt-get install pgadmin3
³õ´Î°²×°ºó£¬Ä¬ÈÏÉú³ÉÒ»¸öÃûΪpostgresµÄÊý¾Ý¿âºÍÒ»¸öÃûΪpostgresµÄÊý¾Ý¿âÓû§¡£ÕâÀïÐèҪעÒâµÄÊÇ£¬Í¬Ê±»¹Éú³ÉÁËÒ»¸öÃûΪpostgresµÄLinuxϵͳÓû§¡£
ÏÂÃ棬ÎÒÃÇʹÓÃpostgresÓû§£¬À´Éú³ÉÆäËûÓû§ºÍÐÂÊý¾Ý¿â¡£ºÃ¼¸ÖÖ·½·¨¿ÉÒÔ´ïµ½Õâ¸öÄ¿µÄ£¬ÕâÀï½éÉÜÁ½ÖÖ¡£
Ê×ÏÈ£¬Ð½¨Ò»¸öLinuxÐÂÓû§£¬¿ÉÒÔÈ¡ÄãÏëÒªµÄÃû×Ö£¬ÕâÀïΪdbuser¡£
sudo adduser dbuser
È»ºó£¬Çл»µ½postgresÓû§¡£
sudo su - postgres
ÏÂÒ»²½£¬Ê¹ÓÃpsqlÃüÁîµÇ¼PostgreSQL¿ØÖÆ̨¡£
psql
ÕâʱÏ൱ÓÚϵͳÓû§postgresÒÔͬÃûÊý¾Ý¿âÓû§µÄÉí·Ý£¬µÇ¼Êý¾Ý¿â£¬ÕâÊDz»ÓÃÊäÈëÃÜÂëµÄ¡£Èç¹ûÒ»ÇÐÕý³££¬ÏµÍ³Ìáʾ·û»á±äΪ"postgres=#"£¬±íʾÕâʱÒѾ½øÈëÁËÊý¾Ý¿â¿ØÖÆ̨¡£ÒÔϵÄÃüÁÔÚ¿ØÖÆ̨ÄÚÍê³É¡£
µÚÒ»¼þÊÂÊÇʹÓÃ\passwordÃüÁΪpostgresÓû§ÉèÖÃÒ»¸öÃÜÂë¡£
\password postgres
µÚ¶þ¼þÊÂÊÇ´´½¨Êý¾Ý¿âÓû§dbuser£¨¸Õ²Å´´½¨µÄÊÇLinuxϵͳÓû§£©£¬²¢ÉèÖÃÃÜÂë¡£
CREATE USER dbuser WITH PASSWORD 'password';
µÚÈý¼þÊÂÊÇ´´½¨Óû§Êý¾Ý¿â£¬ÕâÀïΪexampledb£¬²¢Ö¸¶¨ËùÓÐÕßΪdbuser¡£
CREATE DATABASE exampledb OWNER dbuser;
µÚËļþÊÂÊǽ«exampledbÊý¾Ý¿âµÄËùÓÐȨÏÞ¶¼¸³Óèdbuser£¬·ñÔòdbuserÖ»ÄܵǼ¿ØÖÆ̨£¬Ã»ÓÐÈκÎÊý¾Ý¿â²Ù×÷ȨÏÞ¡£
GRANT ALL PRIVILEGES ON DATABASE exampledb to dbuser;
×îºó£¬Ê¹ÓÃ\qÃüÁîÍ˳ö¿ØÖÆ̨£¨Ò²¿ÉÒÔÖ±½Ó°´ctrl+D£©¡£
\q
Ìí¼ÓÐÂÓû§ºÍÐÂÊý¾Ý¿â£¬³ýÁËÔÚPostgreSQL¿ØÖÆ̨ÄÚ£¬»¹¿ÉÒÔÔÚshellÃüÁîÐÐÏÂÍê³É¡£ÕâÊÇÒòΪPostgreSQLÌṩÁËÃüÁîÐгÌÐòcreateuserºÍcreatedb¡£»¹ÊÇÒÔн¨Óû§dbuserºÍÊý¾Ý¿âexampledbΪÀý¡£
Ê×ÏÈ£¬´´½¨Êý¾Ý¿âÓû§dbuser£¬²¢Ö¸¶¨ÆäΪ³¬¼¶Óû§¡£
sudo -u postgres createuser --superuser dbuser
È»ºó£¬µÇ¼Êý¾Ý¿â¿ØÖÆ̨£¬ÉèÖÃdbuserÓû§µÄÃÜÂ룬Íê³ÉºóÍ˳ö¿ØÖÆ̨¡£
sudo -u postgres psql \password dbuser \q
½Ó×Å£¬ÔÚshellÃüÁîÐÐÏ£¬´´½¨Êý¾Ý¿âexampledb£¬²¢Ö¸¶¨ËùÓÐÕßΪdbuser¡£
sudo -u postgres createdb -O dbuser exampledb
Ìí¼ÓÐÂÓû§ºÍÐÂÊý¾Ý¿âÒԺ󣬾ÍÒªÒÔÐÂÓû§µÄÃûÒåµÇ¼Êý¾Ý¿â£¬ÕâʱʹÓõÄÊÇpsqlÃüÁî¡£
psql -U dbuser -d exampledb -h 127.0.0.1 -p 5432
ÉÏÃæÃüÁîµÄ²ÎÊýº¬ÒåÈçÏ£º-UÖ¸¶¨Óû§£¬-dÖ¸¶¨Êý¾Ý¿â£¬-hÖ¸¶¨·þÎñÆ÷£¬-pÖ¸¶¨¶Ë¿Ú¡£
ÊäÈëÉÏÃæÃüÁîÒÔºó£¬ÏµÍ³»áÌáʾÊäÈëdbuserÓû§µÄÃÜÂë¡£ÊäÈëÕýÈ·£¬¾Í¿ÉÒԵǼ¿ØÖÆ̨ÁË¡£
psqlÃüÁî´æÔÚ¼òдÐÎʽ¡£Èç¹ûµ±Ç°LinuxϵͳÓû§£¬Í¬Ê±Ò²ÊÇPostgreSQLÓû§£¬Ôò¿ÉÒÔÊ¡ÂÔÓû§Ãû£¨-U²ÎÊýµÄ²¿·Ö£©¡£¾ÙÀýÀ´Ëµ£¬ÎÒµÄLinuxϵͳÓû§ÃûΪruanyf£¬ÇÒPostgreSQLÊý¾Ý¿â´æÔÚͬÃûÓû§£¬ÔòÎÒÒÔruanyfÉí·ÝµÇ¼Linuxϵͳºó£¬¿ÉÒÔÖ±½ÓʹÓÃÏÂÃæµÄÃüÁîµÇ¼Êý¾Ý¿â£¬ÇÒ²»ÐèÒªÃÜÂë¡£
psql exampledb
´Ëʱ£¬Èç¹ûPostgreSQLÄÚ²¿»¹´æÔÚÓ뵱ǰϵͳÓû§Í¬ÃûµÄÊý¾Ý¿â£¬ÔòÁ¬Êý¾Ý¿âÃû¶¼¿ÉÒÔÊ¡ÂÔ¡£±ÈÈ磬¼Ù¶¨´æÔÚÒ»¸ö½Ð×öruanyfµÄÊý¾Ý¿â£¬ÔòÖ±½Ó¼üÈëpsql¾Í¿ÉÒԵǼ¸ÃÊý¾Ý¿â¡£
psql
ÁíÍ⣬Èç¹ûÒª»Ö¸´ÍⲿÊý¾Ý£¬¿ÉÒÔʹÓÃÏÂÃæµÄÃüÁî¡£
psql exampledb < exampledb.sql
³ýÁËÇ°ÃæÒѾÓõ½µÄ\passwordÃüÁÉèÖÃÃÜÂ룩ºÍ\qÃüÁÍ˳ö£©ÒÔÍ⣬¿ØÖÆ̨»¹ÌṩһϵÁÐÆäËûÃüÁî¡£
\h£º²é¿´SQLÃüÁîµÄ½âÊÍ£¬±ÈÈç\h select¡£ \?£º²é¿´psqlÃüÁîÁÐ±í¡£ \l£ºÁгöËùÓÐÊý¾Ý¿â¡£ \c [database_name]£ºÁ¬½ÓÆäËûÊý¾Ý¿â¡£ \d£ºÁгöµ±Ç°Êý¾Ý¿âµÄËùÓбí¸ñ¡£ \d [table_name]£ºÁгöijһÕűí¸ñµÄ½á¹¹¡£ \du£ºÁгöËùÓÐÓû§¡£ \e£º´ò¿ªÎı¾±à¼Æ÷¡£ \conninfo£ºÁгöµ±Ç°Êý¾Ý¿âºÍÁ¬½ÓµÄÐÅÏ¢¡£
»ù±¾µÄÊý¾Ý¿â²Ù×÷£¬¾ÍÊÇʹÓÃÒ»°ãµÄSQLÓïÑÔ¡£
# ´´½¨Ð±í CREATE TABLE user_tbl(name VARCHAR(20), signup_date DATE); # ²åÈëÊý¾Ý INSERT INTO user_tbl(name, signup_date) VALUES('ÕÅÈý', '2013-12-22'); # Ñ¡Ôñ¼Ç¼ SELECT * FROM user_tbl; # ¸üÐÂÊý¾Ý UPDATE user_tbl set name = 'ÀîËÄ' WHERE name = 'ÕÅÈý'; # ɾ³ý¼Ç¼ DELETE FROM user_tbl WHERE name = 'ÀîËÄ' ; # Ìí¼ÓÀ¸Î» ALTER TABLE user_tbl ADD email VARCHAR(40); # ¸üнṹ ALTER TABLE user_tbl ALTER COLUMN signup_date SET NOT NULL; # ¸üÃûÀ¸Î» ALTER TABLE user_tbl RENAME COLUMN signup_date TO signup; # ɾ³ýÀ¸Î» ALTER TABLE user_tbl DROP COLUMN email; # ±í¸ñ¸üÃû ALTER TABLE user_tbl RENAME TO backup_tbl; # ɾ³ý±í¸ñ DROP TABLE IF EXISTS backup_tbl;
ÔÎĵØÖ·£ºhttp://www.linuxprobe.com/postgresql-novice-entry.html±à¼£ºÑî·«£¬ÉóºËÔ±£º·ëç÷