公司换国产数据库,运维老张从MySQL迁到GaussDB,被要求第一天就把常用操作跑通。GaussDB基于PostgreSQL内核开发,命令风格和PG很像,会PG的人上手很快,但有几处细节不一样。
连接和基础查看
gsql -d 数据库名 -U 用户名 -p 端口SELECT version();gsql是它的命令行客户端,对应PG的psql。元命令以反斜杠开头,比如反斜杠加l列出所有数据库、反斜杠加dt列出当前库的表、反斜杠加d加表名看表结构、反斜杠加c切换数据库。记住这个规律就不用死背。
建库建表
建库用create database 库名。建表语法和PG基本一致,支持serial自增、varchar变长、timestamp时间戳。它默认区分大小写,标识符不加引号会被转成小写,这点和PG相同,写SQL时注意。
常用增删改查
- 插入:insert into 表名 (字段) values (值)。
- 查询:select 字段 from 表名 where 条件 limit 10。
- 更新:update 表名 set 字段=值 where 条件。
- 删除:delete from 表名 where 条件,慎用不带条件的删除。
用户权限和备份
建用户用create user,授权用grant 权限 on 对象 to 用户。集群模式下用户通常还要有登录管理等权限。逻辑备份用gs_dump和gs_dumpall导出,恢复用gs_restore。物理备份和主备切换要用集群管理工具gs_ctl和gs_om,这部分和单机数据库差别最大,运维要单独学。