postgressql
2016-06-15 16:06
477 查看
首先创建一个数据库,假设名字是abc:
createdb abc
然后进入数据库abc:
psql abc
终端提示:
psql (9.1rc1)
Type "help" for help.
abc=#
说明我们已经进去啦,
然后创建一个score表:
CREATE TABLE score (id int, name varchar(20), score real);
如果看到"CREATE TABLE"的字样就说明表已经建好了。
注意,PostgreSQL的所有语句都要以;结尾,否则PostgreSQL会换一行等待你继续输入;
下面我们插入一条记录:
INSERT INTO score VALUES (1, 'JOHN', 90);
如果看到"INSERT 0 1"的字样就说明记录已经插进去了。
查询score表:
4000
SELECT * FROM score;
显示:
id | name | score
----+------+-------
1 | JOHN | 90
(1 row)
查看score表的表结构信息:
\d score
显示如下:
Table "public.score"
Column | Type | Modifiers
-----------+--------------------------------+-----------
id | integer |
name | character varying(20) |
score | real |
在score表的id列上建一个索引id_score:
create index id_score on score(id);
如果看到“CREATE INDEX"的字样就说明索引已经建好了。
这个时候再 \d score 查看表结构时输出如下:
Table "public.score"
Column | Type | Modifiers
-----------+--------------------------------+-----------
id | integer |
name | character varying(20) |
score | real |
Indexes:
"id_score" btree (id)
然后显示现有的索引:
\di
如果显示No relations found.表示目前的数据库中还没有索引。
删除score表:
DROP TABLE score;
如果看到"DROP TABLE"的字样就说明score表已经被删除了。
退出PostgreSQL:
\q
以下还有一些PostgreSQL的常用命令:
\l 列出已有数据库的Owner,Encoding等信息
\c 切换数据库(切换数据库表示其后进行的操作,如insert等都将作用在切换后的数据库上)
比如目前提示符是:abc=#, 那么输入 \c
mydb 后,提示符变成了mydb=#,表示切换到了mydb数据库。
\dt 查看当前数据库中已有的表
下面介绍如何备份数据库:
首先在abc数据库中创建一个price表,并插入一些数据:
\c abc; #切换到abc数据库
CREATE TABLE price (id int, name varchar(100), price real);
INSERT INTO price VALUES (1, 'apple', 10);
INSERT INTO priceVALUES (2, 'orange', 5);
INSERT INTO price VALUES (3, 'banana', 20);
INSERT INTO price VALUES (4, 'peach', 15);
INSERT INTO price VALUES (5, 'pear', 8);
然后退出PostgreSQL:\q
在终端输入:
pg_dump abc >abc.pgsql #将abc数据库备份到abc.pgsql文件里
恢复数据库:
首先退出PostgreSQL,然后在终端输入:
dropdb abc #删除abc数据库
然后输入 psql abc 会提示:psql:
FATAL: database "abc" does not exist 表式abc数据库不存在。
然后在终端输入:
createdb abc #恢复数据库前先建立一个空的数据库
psql abc < abc.pgsql #表示把abc.pgsql导入abc数据库中
psql abc #进入abc数据库
select * from price; #会发现之前插入的数据又回来啦。
另外,同样可以将所有的SQL语句保存在一个文件里,数据库重建的时候导入这一个文件就可以了,很方便:
首先假设在data/下新建一个a.pgsql:
CREATE TABLE one(id int);
INSERT INTO one VALUES(123);
然后:
cd /usr/local/pgsql/data
psql abc < a.pgsql #表示把a.pgsql导入abc数据库中(注意,我们之前已经创建了abc数据库)
以上就是基本的数据库操作啦,SQL语句的绝大部分语法在PostgreSQL里都是适用的。
以下是一些补充:
PostgreSQL的配置文件是/usr/local/pgsql/data/postgresql.conf,可以更改用户登录端口和最大连接用户数,
vi /usr/local/pgsql/data/postgresql.conf
有#的行表示这是一个注释行。
找到以下的以下内容:
listen_addresses = 'localhost' #说明PostgreSQL默认只允许本地登录,要远程登录需要改成listen_addresses
= '*'
port = 5432 #PostgreSQL默认监听端口是5432(可以netstat
-tnl|grep 5432来验证以下)
max_connections = 100 # PostgreSQL默认最大连接数是100
还有其他的设置都在postgresql.conf,可以好好看看。
以下是网上找的一些configure时候的常用选项(可以通过 configure
--help查看):
configure --prefix=XXX
为安装 PostgreSQL 选择一个不同的路径。缺省是 /usr/local/pgsql。
configure --enable-multibyte
允许使用多字节字符编码。这个选项主要用于象日语,韩语或中文这样的语言。
configure --with-perl
添加 Perl 模块接口。请注意 Perl 接口将安装到 Perl 模块的常用位置(典型的是在 /usr/lib/perl),所以要成功使用这个选项,你必须有 root 权限。
createdb abc
然后进入数据库abc:
psql abc
终端提示:
psql (9.1rc1)
Type "help" for help.
abc=#
说明我们已经进去啦,
然后创建一个score表:
CREATE TABLE score (id int, name varchar(20), score real);
如果看到"CREATE TABLE"的字样就说明表已经建好了。
注意,PostgreSQL的所有语句都要以;结尾,否则PostgreSQL会换一行等待你继续输入;
下面我们插入一条记录:
INSERT INTO score VALUES (1, 'JOHN', 90);
如果看到"INSERT 0 1"的字样就说明记录已经插进去了。
查询score表:
4000
SELECT * FROM score;
显示:
id | name | score
----+------+-------
1 | JOHN | 90
(1 row)
查看score表的表结构信息:
\d score
显示如下:
Table "public.score"
Column | Type | Modifiers
-----------+--------------------------------+-----------
id | integer |
name | character varying(20) |
score | real |
在score表的id列上建一个索引id_score:
create index id_score on score(id);
如果看到“CREATE INDEX"的字样就说明索引已经建好了。
这个时候再 \d score 查看表结构时输出如下:
Table "public.score"
Column | Type | Modifiers
-----------+--------------------------------+-----------
id | integer |
name | character varying(20) |
score | real |
Indexes:
"id_score" btree (id)
然后显示现有的索引:
\di
如果显示No relations found.表示目前的数据库中还没有索引。
删除score表:
DROP TABLE score;
如果看到"DROP TABLE"的字样就说明score表已经被删除了。
退出PostgreSQL:
\q
以下还有一些PostgreSQL的常用命令:
\l 列出已有数据库的Owner,Encoding等信息
\c 切换数据库(切换数据库表示其后进行的操作,如insert等都将作用在切换后的数据库上)
比如目前提示符是:abc=#, 那么输入 \c
mydb 后,提示符变成了mydb=#,表示切换到了mydb数据库。
\dt 查看当前数据库中已有的表
下面介绍如何备份数据库:
首先在abc数据库中创建一个price表,并插入一些数据:
\c abc; #切换到abc数据库
CREATE TABLE price (id int, name varchar(100), price real);
INSERT INTO price VALUES (1, 'apple', 10);
INSERT INTO priceVALUES (2, 'orange', 5);
INSERT INTO price VALUES (3, 'banana', 20);
INSERT INTO price VALUES (4, 'peach', 15);
INSERT INTO price VALUES (5, 'pear', 8);
然后退出PostgreSQL:\q
在终端输入:
pg_dump abc >abc.pgsql #将abc数据库备份到abc.pgsql文件里
恢复数据库:
首先退出PostgreSQL,然后在终端输入:
dropdb abc #删除abc数据库
然后输入 psql abc 会提示:psql:
FATAL: database "abc" does not exist 表式abc数据库不存在。
然后在终端输入:
createdb abc #恢复数据库前先建立一个空的数据库
psql abc < abc.pgsql #表示把abc.pgsql导入abc数据库中
psql abc #进入abc数据库
select * from price; #会发现之前插入的数据又回来啦。
另外,同样可以将所有的SQL语句保存在一个文件里,数据库重建的时候导入这一个文件就可以了,很方便:
首先假设在data/下新建一个a.pgsql:
CREATE TABLE one(id int);
INSERT INTO one VALUES(123);
然后:
cd /usr/local/pgsql/data
psql abc < a.pgsql #表示把a.pgsql导入abc数据库中(注意,我们之前已经创建了abc数据库)
以上就是基本的数据库操作啦,SQL语句的绝大部分语法在PostgreSQL里都是适用的。
以下是一些补充:
PostgreSQL的配置文件是/usr/local/pgsql/data/postgresql.conf,可以更改用户登录端口和最大连接用户数,
vi /usr/local/pgsql/data/postgresql.conf
有#的行表示这是一个注释行。
找到以下的以下内容:
listen_addresses = 'localhost' #说明PostgreSQL默认只允许本地登录,要远程登录需要改成listen_addresses
= '*'
port = 5432 #PostgreSQL默认监听端口是5432(可以netstat
-tnl|grep 5432来验证以下)
max_connections = 100 # PostgreSQL默认最大连接数是100
还有其他的设置都在postgresql.conf,可以好好看看。
以下是网上找的一些configure时候的常用选项(可以通过 configure
--help查看):
configure --prefix=XXX
为安装 PostgreSQL 选择一个不同的路径。缺省是 /usr/local/pgsql。
configure --enable-multibyte
允许使用多字节字符编码。这个选项主要用于象日语,韩语或中文这样的语言。
configure --with-perl
添加 Perl 模块接口。请注意 Perl 接口将安装到 Perl 模块的常用位置(典型的是在 /usr/lib/perl),所以要成功使用这个选项,你必须有 root 权限。
相关文章推荐
- 通过Navicat for MySQL远程连接的时候报错mysql 1130的解决方法
- SQLAlchemy 代码学习
- oracle三层嵌套分页
- NoSQL数据库-MongoDB和Redis
- Spring Cache整合Ehcache或Redis or others
- oracle对null赋值默认值
- Oracle 常用内置函数
- Redis 集群教程
- mysql免安装版常用操作
- 转:SQL:外连接on条件与where条件的区别
- 主键,外键,索引,唯一索引
- oracle11gR2安装教程
- SQL的四种连接-左外连接、右外连接、内连接、全连接
- Mysql删除重复数据
- oracle max()函数和min()函数
- MySQL 性能监控4大指标——第二部分
- MongoDB学习笔记
- SQL Server 语句转换格式函数Cast、Convert
- node.js操作mongodb
- SQL语句优化技巧