postgresql 常用命令
前端之家收集整理的这篇文章主要介绍了
postgresql 常用命令,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
安装
sudo apt-get install postgresql-client
sudo apt-get install postgresql
启动
sudo service postgre
sql start
进入控制台
或
p
sql -U dbuser -d exampledb -h 127.0.0.1 -p 5432
退出
postgres=# \q
sudo -u postgres createuser dbuser
sudo -u postgres psql
postgres=# CREATE USER dbuser WITH PASSWORD 'password';
查看所有用户
postgres=# \du
更改密码
postgres=# \password dbuser
postgres=# \q
删除用户
postgres=# drop user dbuser;
postgres=# CREATE DATABASE exampledb OWNER dbuser;
postgres=# GRANT ALL PRIVILEGES ON DATABASE exampledb to dbuser;
postgres=# \c exampledb;
postgres=# ALTER SCHEMA public OWNER to dbuser;
postgres=# GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO dbuser;
postgres=# GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO dbuser;
sudo -u postgres createdb -O dbuser exampledb
查看所有数据库
postgres=# \l
postgres=# \c exampledb
查看表
postgres=# \d
查看表结构
postgres=# \d user_tab1
常用控制台命令
\password 设置密码。
\q
退出。
\h 查看
sql命令的解释,比如\h select。
\? 查看p
sql命令列表。
\l 列出所有
数据库。
\c [database_name] 连接其他
数据库。
\d 列出当前
数据库的所有表格。
\d [table_name] 列出某一张表格的结构。
\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 ALTER COLUMN email SET DEFAULT 'example@example.com';
#
去除字段默认值
ALTER TABLE user_tbl ALTER email DROP DEFAULT;
#
重命名字段
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;
#
删除库
\c hello2;
DROP DATABASE IF EXISTS hello;
从上面的命令可以看出基本的 sql 语句跟 MysqL 是一样的。
备份、恢复
- pg_dump 备份
- pg_dumpall 备份所有数据库
- pg_restore 恢复
- psql exampledb < exampledb.sql 导入数据
example:
pg_dump --format=t -d db_name -U user_name -W -h 127.0.0.1 > dump.
sql
pg_restore -d db_name -h 127.0.0.1 -U user_name < dump.
sql
# 注意要加 -U 并且一定要是 db_name 的 owner
Peer authentication Failed for user "user_name"
$ pg_dump --format
=t -d db_name -U user_name
pg_dump:
[archiver
(db
)] connection to database
"db_name" Failed: FATAL: Peer authentication
Failed for user
"user_name"
$
# 指定 hostname 即可
$ pg_dump --format
=t -d db_name -U user_name -h 127.0.0.1
原文链接:https://www.f2er.com/postgresql/194363.html