暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Psql常用命令

DBA随笔记 2024-12-23
76
列出所有数据库:
登录数据库:

    [postgres@pgserver pgdata]$ psql -192.168.40.10 -5432 -U postgres -d dy
    Password for user postgres:
    psql: error: connection to server at "192.168.40.10", port 5432 failed: FATAL:  password authentication failed for user "postgres"
      [postgres@pgserver pgdata]$ psql
      psql (16.4)
      Type "help" for help.


      postgres=ALTER USER postgres WITH PASSWORD 'root';
      ALTER ROLE
      postgres=ALTER USER postgres WITH PASSWORD 'postgres';
      ALTER ROLE
      postgres=# \q
      [postgres@pgserver pgdata]$ psql -192.168.40.10 -5432 -U postgres -d postgres
      Password for user postgres:
      psql (16.4)
      Type "help" for help.


        [postgres@pgserver pgdata]$ psql -h 192.168.40.10 -p 5432 -U postgres -d dy
        Password for user postgres:
        psql (16.4)
        Type "help" for help.


        dy=#


        备注:

        -h 指定主机或IP地址登录

        -p 指定端口登录

        -U 指定用户登录

        -d 指定数据库登录


        列出所有表
          \d
          查看表结构
            \d t1
            创建和查看索引信息
              \d id_inx
              使用\d + 可以更详细
                \d+ t1
                只显示匹配的表
                  \dt

                  显示索引
                    \di   
                    \di+
                    列出所有的schema

                      \dn
                      显示所有的表空间

                        \db
                        列出数据库中所有的角色或用户

                          \du

                          \dg
                          显示表权限分配

                            \dp t1
                            列出当前数据库连接的信息

                              \conninfo
                              查看数据库中安装的扩展

                                \dx

                                select * from pg_extension;
                                  附录:
                                  psql命令使用
                                  命令 说明
                                  \h help \h create table
                                  \d table_name 查看表(视图,索引,序列)结构
                                  \du 查看用户列表
                                  \dt 查询数据库所有表(非系统表)
                                  \dS 列出系统表和索引
                                  \di index_name 只查看指定索引
                                  \df 列出函数
                                  \dv 只显示视图
                                  \ds 只显示序列
                                  \dn 列出所有的schema
                                  \db 显示所有的表空间
                                  \dg 列出数据库的所有角色或用户
                                  \dp或者\z 查看表的分配权限
                                  \c [user_name] [db_name] 切换某用户到指定数据库
                                  \timing on/off 显示执行sql的时间
                                  \encoding encode_type 设置客户端编码
                                  \pset [option [value] ] 输出格式设置
                                  \l 显示所有数据库列表
                                  \q 退出
                                  \o filename 文本输出执行结果
                                  \I filename 用于执行存储在外部文件的sql语句或命令
                                  \x 数据按列展示,类似mysql的\G
                                  自动补全:连续单击两次tab键


                                  +:对比显示更加详细的信息,例如:\du+ \dt+ \d+
                                  ?/* :查询匹配通配符,例如:\d tb?
                                  pgsql -E :可以显示命令执行的对应的SQL语句


                                  \pset边框设置
                                  \pset boder 0 :不带任何边框
                                  \pset boder 1 :输出内容有边框
                                  \pset boder 2 :带边框


                                  \pset设置文本输出格式
                                  \pset format unaligned (默认分隔符|)
                                  \pset filesep ‘分隔符’ (例如:\t)

                                  文章转载自DBA随笔记,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                                  评论