PostgreSQL 是一个免费的对象-关系数据库服务器(ORDBMS),在灵活的BSD许可证下发行。 PostgreSQL 开发者把它念作 post-gress-Q-L。PostgreSQL 的 Slogan 是 “世界上最先进的 开源关系型数据库”。
PostgreSQL安装
到官网下载源码版本9.5.17 https://www.postgresql.org/ftp/source/
postgresql- 9.5.17 .tar.gz
1、拷贝安装包到linux服务器 2、使用 tar 命令解压到 /usr下 # tar -zxvf postgresql-9.5.17.tar.gz -C /usr 3、重命名 mv /usr/postgresql-9.5.17 /usr/postgresql 4、安装依赖:# yum -y install gcc-c++ 5、安装依赖:# yum -y install zlib-devel 7、安装依赖:# yum -y install readline-devel 8、进入解压目录: cd /usr/postgresql 9、执行命令:# ./configure 10、执行命令:# make 12、执行命令:# make install 13、建立一个系统用户 postgres: # adduser postgres 14、建立一个存储数据的目录: # mkdir /usr/local/pgsql/data 15、将目录分配给 postgres 用户: # chown -R postgres:postgres /usr/local/pgsql 16、添加启动服务: # cp /usr/postgresql/contrib/start-scripts/linux /etc/init.d/postgresql 17、启动服务的脚本须是可执行程序,用chmod 修改: # chmod a+x /etc/init.d/postgresql 18、在环境变量下添加 postgresql 的 bin 目录: # vi /etc/profile export PATH USER 下添加: export PATH=/usr/local/pgsql/bin:$PATH :wq source /etc/profile 19、初始化数据库,切换用户到 postgres: # su -l postgres 初始化数据库,支持 unicode (多语种字符): # initdb -E UNICODE -D /usr/local/pgsql/data 20、切换root用户: # su 启动数据库: # /etc/init.d/postgresql start 21、切换用户到 postgres # su -l postgres psql 进入数据库系统;\l 查看数据库; \q退出数据库 修改数据库账号postgres的密码: # ALTER USER postgres WITH PASSWORD ‘123456’;
postgresql 命令: 列出系统中的数据库 \l 创建数据库 create database aa ; \h :查看 SQL 命令的解释,比如 \h select 。 \? :查看 psql 命令列表。 \l :列出所有数据库。 \c [database_name] :连接其他数据库。 \d :列出当前数据库的所有表格。 \d [table_name] :列出某一张表格的结构。 \du :列出所有用户。 \e :打开文本编辑器。 \conninfo :列出当前数据库和连接的信息
PostgreSQL使用
数据库操作
连接数据库
在linux控制台中,输入如下命令:
默认连接本机 [postgres @cluster152 ~]$ psql 或者,连接其他服务器上的指定数据库 [postgres @cluster152 ~]$ psql -h 192.168.48.151 -p 5432 -U postgres mytest Password for user postgres:
创建数据库
CREATE DATABASE 命令需要在 PostgreSQL 命令窗口来执行,语法格式如下
CREATE DATABASE dbname;
createdb 命令创建数据库(在linux环境下执行) createdb 是一个 SQL 命令 CREATE DATABASE 的封装。 createdb 命令语法格式如下:
createdb [option…] [dbname [description]]
接下来我们打开一个命令窗口,进入到 PostgreSQL 的安装目录,并进入到 bin 目录, createdb 命令位于 PostgreSQL安装目录/bin 下,执行创建数据库的命令:
[postgres @cluster152 ~]$ ll /usr/local/pgsql/bin $ createdb -h 主机 -p 5432 -U postgres 数据库名字 password ******
删除数据库
DROP DATABASE 会删除数据库的系统目录项并且删除包含数据的文件目录。 DROP DATABASE 只能由超级管理员或数据库拥有者执行。 DROP DATABASE 命令需要在 PostgreSQL 命令窗口来执行,语法格式如下:
DROP DATABASE [ IF EXISTS ] name
切换数据库
接下来我们可以使用 \c + 数据库名 来进入数据库:
postgres=# \c 数据库名 You are now connected to database “数据库名” as user “postgres”. 数据库名=#
表操作
创建表
PostgreSQL 使用 CREATE TABLE 语句来创建数据库表格。 语法 CREATE TABLE 语法格式如下:
CREATE TABLE table_name( column1 datatype, column2 datatype, column3 datatype, ….. columnN datatype, PRIMARY KEY( 一个或多个列 ) );
我们可以使用 \d 命令来查看表格是否创建成功: 1.使用\c先选择某个数据库 2.使用\d查看该数据库下的表 使用 \d 表名 还可以查看表的结构信息
删除表
语法:
DROP TABLE table_name;
增删改查
1)INSERT INTO 语句语法格式如下:
INSERT INTO TABLE_NAME (column1, column2, column3,…columnN) VALUES (value1, value2, value3,…valueN);
在使用 INSERT INTO 语句时,字段列必须和数据值数量相同,且顺序也要对应。 如果我们向表中的所有字段插入值,则可以不需要指定字段,只需要指定插入的值即可:
INSERT INTO TABLE_NAME VALUES (value1,value2,value3,…valueN);
2)SELECT 语句用于从数据库中选取数据。
结果被存储在一个结果表中,称为结果集。 语法 SELECT 语句语法格式如下:
SELECT column1, column2,…columnN FROM table_name;
如果我们想读取表中的所有数据可以使用以下 SQL 语句:
SELECT * FROM table_name;
3)UPDATE 操作,更新在 PostgreSQL 数据库中的数据 语法 以下是 UPDATE 语句修改数据的通用 SQL 语法:
UPDATE table_name SET column1 = value1, column2 = value2…., columnN = valueN WHERE [condition];
4)DELETE 语句可以删除 PostgreSQL 表中的数据。 语法 以下是 DELETE 语句删除数据的通用语法:
DELETE FROM table_name WHERE [condition];