zoukankan      html  css  js  c++  java
  • 【PostgreSQL】PostgreSQL操作-psql基本命令

    在阅读的过程中有不论什么问题,欢迎一起交流

    邮箱:1494713801@qq.com   

    QQ:1494713801

    一、建立数据库连接
    ----------------
    接入PostgreSQL数据库: psql -h IP地址 -p port  -U 数据库名

    之后会要求输入数据库password

    二、訪问数据库

    1、列举数据库:l
    2、选择数据库:c  数据库名
    3、查看该某个库中的全部表:dt
    4、切换数据库:c interface
    5、查看某个库中的某个表结构:d 表名
    6、查看某个库中某个表的记录:select * from apps limit 1;
    7、显示字符集:encoding
    8、退出psgl:q

    三、dump数据库

    命令:pg_dump -h IP地址 -p port -U 数据库username -f 目标存储文件及路径 目标数据库名

    之后会要求输入数据库用户password

    參数:

        # -h: PostgreSQLserver的主机为192.168.149.137。
        # -U: 登录用户为postgres。
        # -t: 导出表名以test开头的数据表。如testtable。


        # -a: 只导出数据。不导出对象的schema信息。
        # -f: 输出文件是当前文件夹下的my_dump.sql

    实例:
        # mydatabase是此次操作的目标数据库。
        /> pg_dump -h 192.168.149.137 -U postgres -t test* -a -f ./my_dump.sql mydatabase
        #-c: 先输出删除数据库对象的SQL命令。在输出创建数据库对象的SQL命令。这对于部署干净的初始系统或是搭建測试环境都很方便。
        /> pg_dump -h 192.168.220.136 -U postgres -c -f ./my_dump.sql mydatabase
        #导出mydatabase数据库的信息。在通过psql命令导入时能够又一次指定数据库,如:/> psql -d newdb -f my_dump.sql
        /> pg_dump -h 192.168.220.136 -U postgres -f ./my_dump.sql mydatabase
        #导出模式为my_schema和以test开头的数据库对象名。可是不包含my_schema.employee_log对象。
        /> pg_dump -t 'my_schema.test*' -T my_schema.employee_log mydatabase > my_dump.sql
        #导出east和west模式下的全部数据库对象。以下两个命令是等同的,仅仅是后者使用了正则。
        /> pg_dump -n 'east' -n 'west' mydatabase -f my_dump.sql
        /> pg_dump -n '(east|west)' mydatabase -f my_dump.sql

     四、恢复dump的数据库

    命令:psql -h IP地址 -p port -U 数据库username -d 目标数据库名 -f 目标存储文件及路径

    之后会要求输入数据库用户password

    參数:

        # -h: PostgreSQLserver的主机为192.168.149.137。
        # -U: 登录用户为postgres。
        # -f: 输出文件是当前文件夹下的my_dump.sql

     五、压缩dump数据库及其恢复

    压缩dump:pg_dump -h IP地址 -p port -U 数据库username -f 目标存储文件及路径 -Fc 目标数据库名

    恢复:pg_restore -h IP地址 -p port -U 数据库username -Fc -d 目标数据库名 目标存储文件及路径

    附:压缩dump后文件大小会缩小10倍

    六、使用系统表查询数据库个数

    运行sql命令:select count(*) from pg_database where datname like 'db%';

    參考http://www.cnblogs.com/stephen-liu74/archive/2012/06/01/2307813.html

  • 相关阅读:
    .net批量插入SqlServer数据库的方法:
    Google主页中国元宵节
    左岸读书你是想读书,还是想读完书?
    Google主页中国著名教育家和画家 丰子恺先生 诞辰114周年
    【转载】图的遍历
    Google主页爱尔兰作家 布拉姆斯托克诞辰165周年
    诺基亚黯然关闭其在欧洲的最后一个手机工厂的背后
    [POJ 1012] Joseph(约瑟夫)
    台湾南投3.27地震
    左岸读书语不惊人死不休(95)
  • 原文地址:https://www.cnblogs.com/yjbjingcha/p/6888651.html
Copyright © 2011-2022 走看看