• postgresql备份和恢复


    备份: pg_dump -d m3vg -h localhost -p 5432 -U delta -W -f 1024.dump -F tar

    恢复: pg_restore -h localhost -p 5432 -Udelta -W 1024.dump -d m3vg

    忘记postgresql的用户的密码,怎么进入psql呢?

      1. sudo su postgres -

      2. psql 

      执行上面两部就可以进入了

    -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    pg_dump is an effective tool to backup postgres database. It creates a *.sql file with CREATE TABLE, ALTER TABLE, and COPY SQL statements of source database. To restore these dumps psql command is enough.

    Using pg_dump, you can backup a local database and restore it on a remote database at the same time, using a single command. In this article, let us review several practical examples on how to use pg_dump to backup and restore.

    For the impatient, here is the quick snippet of how backup and restore postgres database using pg_dump and psql:

    Backup:  $ pg_dump -U {user-name} {source_db} -f {dumpfilename.sql}
    
    Restore: $ psql -U {user-name} -d {desintation_db}-f {dumpfilename.sql}

    1. Backup a single postgres database

    This example will backup erp database that belongs to user geekstuff, to the file mydb.sql

    $ pg_dump -U geekstuff erp -f mydb.sql


    It prompts for password, after authentication mydb.sql got created with create table, alter table and copy commands for all the tables in the erp database. Following is a partial output of mydb.sql showing the dump information of employee_details table.

    2. Backup all postgres databases

    To backup all databases, list out all the available databases as shown below.

    Login as postgres / psql user:

    $ su postgres

    List the databases:

    $ psql -l
    
    List of databases
    Name | Owner | Encoding
    -----------+-----------+----------
    article | sathiya | UTF8
    backup | postgres | UTF8
    erp | geekstuff | UTF8
    geeker | sathiya | UTF8

    Backup all postgres databases using pg_dumpall:

    You can backup all the databases using pg_dumpall command.

    $ pg_dumpall > all.sql

    Verify the backup:

    Verify whether all the databases are backed up,

    $ grep "^[]connect" all.sql
    connect article
    connect backup
    connect erp
    connect geeker

    3. Backup a specific postgres table

    $ pg_dump --table products -U geekstuff article -f onlytable.sql

    To backup a specific table, use the –table TABLENAME option in the pg_dump command. If there are same table names in different schema then use the –schema SCHEMANAME option.

    How To Restore Postgres Database

    1. Restore a postgres database

    $ psql -U erp -d erp_devel -f mydb.sql

    This restores the dumped database to the erp_devel database.

    Restore error messages

    While restoring, there may be following errors and warning, which can be ignored.

    psql:mydb.sql:13: ERROR:  must be owner of schema public
    psql:mydb.sql:34: ERROR:  must be member of role "geekstuff"
    psql:mydb.sql:59: WARNING:  no privileges could be revoked
    psql:mydb.sql:60: WARNING:  no privileges could be revoked
    psql:mydb.sql:61: WARNING:  no privileges were granted
    psql:mydb.sql:62: WARNING:  no privileges were granted
    

    2. Backup a local postgres database and restore to remote server using single command:

    $ pg_dump dbname | psql -h hostname dbname

    The above dumps the local database, and extracts it at the given hostname.

    3. Restore all the postgres databases

    $ su postgres
    $ psql -f alldb.sql

    4. Restore a single postgres table

    The following psql command installs the product table in the geek stuff database.

    $ psql -f producttable.sql geekstuff
  • 相关阅读:
    生成lua的静态库.动态库.lua.exe和luac.exe
    Eclipse 常用快捷键 (动画讲解)
    Lua table之弱引用
    编程语言简史(转)
    sublime text 下的Markdown写作
    使用python拼接多张图片.二三事
    Lua标准库- 模块(Modules)
    lua的私有性(privacy)
    Lua字符串库(整理)
    字符编码的故事(转)
  • 原文地址:https://www.cnblogs.com/oxspirt/p/7229902.html
Copyright © 2020-2023  润新知