BASH 命令行
一、psql 命令行
登录 postgres库
su - postgres # 切换用户,同时切换了 bash命令行
psql # 自动登录 postgres 用户数据库 postgres,同时切换到 psql命令行
设置postgres 角色密码
\password postgres # 该密码是 postgres数据库密码,也是 postgres用户密码
创建某角色
CREATE USER dbuser WITH PASSWORD 'password';
创建某角色数据库
CREATE DATABASE exampledb OWNER dbuser;
赋予某角色对其数据库权限
GRANT ALL PRIVILEGES ON DATABASE exampledb to dbuser;
登录某角色数据库
su - dbuser # 切换 bash 命令行
psql -U dbuser -d exampledb -h 127.0.0.1 -p 5432
* 几个封装方法
createuser <=> CRATE USER
dropuser <=> DROP USER
createdb <=> CREATE DATABASE
dropdb <=> DROP DATABASE
二、sudo -u postgres 命令
创建某角色
sudo -u postgres createuser --superuser dbuser
创建某角色数据库
sudo -u postgres createdb -O dbuser exampledb
设置某角色密码(需要切换到 psql命令行)
sudo -u postgres psql
\password dbuser
登录某角色数据库
sudo -u <user> psql <database>
三、psql 指令
\h:查看SQL命令的解释,比如\h select。
\?:查看psql命令列表。
\l:列出所有数据库。
\c [database_name]:连接其他数据库。
\d:列出当前数据库的所有表格。
\d [table_name]:列出某一张表格的结构。
\du:列出所有用户。
\e:打开文本编辑器。
\conninfo:列出当前数据库和连接的信息。
四、linux 创建用户、删除用户
$ useradd dbuser
$ userdel dbuser
数据库操作
# 创建新表
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;
更多介绍