��һ��:PostgreSQL��������
�Դ�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�û��������������û��������ݿ⡣�ü��ַ������Դﵽ����Ŀ�ģ������������֡�
��һ�ַ�����ʹ��PostgreSQL����̨��
���ȣ��½�һ��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
�ڶ��ַ�����ʹ��shell�����С�
�������û��������ݿ⣬������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
���������IJ����������£�-Uָ���û���-dָ�����ݿ⣬-hָ����������-pָ���˿ڡ�
�������������Ժ���ϵͳ����ʾ����dbuser�û������롣������ȷ���Ϳ��Ե�¼����̨�ˡ�
psql�������ڼ�д��ʽ��������ǰLinuxϵͳ�û���ͬʱҲ��PostgreSQL�û���������ʡ���û�����-U�����IJ��֣���������˵���ҵ�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 usertbl(name VARCHAR(20), signupdate DATE);# ��������
INSERT INTO usertbl(name, signupdate) 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 usertbl ALTER COLUMN signupdate SET NOT NULL;# ������λ
ALTER TABLE usertbl RENAME COLUMN signupdate TO signup;# ɾ����λ
ALTER TABLE user_tbl DROP COLUMN email;# ��������
ALTER TABLE usertbl RENAME TO backuptbl;# ɾ������
DROP TABLE IF EXISTS backup_tbl;
ԭ�ģ�http://www.ruanyifeng.com/blog/2013/12/getting_started_with_postgresql.html
- ת����ע����Դ��ITѧϰ�� ��ַ��http://www.t086.com/ �����������Ƽ�������
- �ر������� ��վ�������ر�������ֹת�ص�ר�������������¿�������ת�أ���������ע��������ԭʼ���ߡ����°�Ȩ������ԭʼ�������С����ڱ���վת�����µĸ��˺���վ�����DZ�ʾ������л�⡣������վת�ص������а�Ȩ��������ϵ���ǣ����ǻᾡ�����Ը�����