zoukankan      html  css  js  c++  java
  • PPAS上运行pg_dump经过

    目前我有两台机器,

    分别已经安装了PPAS9.1,安装后建立了OS系统用户enterprisedb和数据库用户enterprisedb。

    机器1:master  192.168.10.88

    机器2: slave 192.168.10.99

    为了可以在机器1和机器2之间方便进行访问,设置pg_hba.conf如下:

    机器1和机器2都如此设置:

    [root@master ~]# su - enterprisedb
    -bash-3.2$ pwd
    /opt/PostgresPlus/9.1AS
    -bash-3.2$ cd data
    -bash-3.2$ cat pg_hba.conf
    # PostgreSQL Client Authentication Configuration File
    # ===================================================.
    
    ......
    
    
    # TYPE  DATABASE        USER            ADDRESS                 METHOD
    
    # "local" is for Unix domain socket connections only
    #local   all             all                                     md5
    local    all             all                                    trust
    # IPv4 local connections:
    #host    all             all             127.0.0.1/32            md5
    host    all             all             0.0.0.0/0               trust
    # IPv6 local connections:
    host    all             all             ::1/128                 md5
    # Allow replication connections from localhost, by a user with the
    # replication privilege.
    #local   replication     enterprisedb                                md5
    #host    replication     enterprisedb        127.0.0.1/32            md5
    #host    replication     enterprisedb        ::1/128                 md5
    -bash-3.2$ 

    然后分别建立数据库:

    机器1:

    [root@master ~]# su - enterprisedb
    -bash-3.2$ pwd
    /opt/PostgresPlus/9.1AS
    -bash-3.2$ cd bin
    -bash-3.2$ ./createdb -d masterdb --owner=enterprisedb

    机器2:

    [root@slave ~]# su - enterprisedb
    -bash-3.2$ pwd
    /opt/PostgresPlus/9.1AS
    -bash-3.2$ cd bin
    -bash-3.2$ ./createdb -d slavedb --owner=enterprisedb

    然后,在机器1上准备数据:

    [root@master ~]# su - enterprisedb
    -bash-3.2$ cd bin
    -bash-3.2$ ./psql -d masterdb
    psql (9.1.2.2)
    Type "help" for help.
    
    masterdb=# begin;
    BEGIN
    masterdb=# create table tab01(id integer);
    CREATE TABLE
    masterdb=# insert into tab01 values(1);
    INSERT 0 1
    masterdb=# create table tab02(id integer);
    CREATE TABLE
    masterdb=# insert into tab02 values(2);
    INSERT 0 1
    masterdb=# end;
    COMMIT
    masterdb=# q

    然后再在机器1上,建立一个执行中的事务,不提交:

    -bash-3.2$ ./psql -d masterdb
    psql (9.1.2.2)
    Type "help" for help.
    
    masterdb=# begin;
    BEGIN
    masterdb=# create table tab03(id integer);
    CREATE TABLE
    masterdb=# insert into tab03 values(3);
    INSERT 0 1
    masterdb=# 

    然后开始pg_dump 动作:

    我从机器2上发起命令:在此把pg_dump的输出,重定向到psql,直接完成restore的任务:

    [root@slave ~]# su - enterprisedb
    -bash-3.2$ cd bin
    -bash-3.2$ ./pg_dump -h 192.168.10.88 -s masterdb | ./psql -h 192.168.10.99 slavedb
    SET
    SET
    SET
    SET
    SET
    CREATE EXTENSION
    COMMENT
    CREATE EXTENSION
    COMMENT
    CREATE EXTENSION
    COMMENT
    SET
    SET
    SET
    CREATE TABLE
    ALTER TABLE
    CREATE TABLE
    ALTER TABLE
    REVOKE
    REVOKE
    GRANT
    GRANT
    -bash-3.2$ 

    在机器2上检验效果:

    -bash-3.2$ ./psql -d slavedb
    psql (9.1.2.2)
    Type "help" for help.
    
    slavedb=# dt
                         List of relations
     Schema |           Name            | Type  |    Owner     
    --------+---------------------------+-------+--------------
     public | tab01                     | table | enterprisedb
     public | tab02                     | table | enterprisedb
     sys    | dual                      | table | enterprisedb
     sys    | edb$session_wait_history  | table | enterprisedb
     sys    | edb$session_waits         | table | enterprisedb
     sys    | edb$snap                  | table | enterprisedb
     sys    | edb$stat_all_indexes      | table | enterprisedb
     sys    | edb$stat_all_tables       | table | enterprisedb
     sys    | edb$stat_database         | table | enterprisedb
     sys    | edb$statio_all_indexes    | table | enterprisedb
     sys    | edb$statio_all_tables     | table | enterprisedb
     sys    | edb$system_waits          | table | enterprisedb
     sys    | plsql_profiler_rawdata    | table | enterprisedb
     sys    | plsql_profiler_runs       | table | enterprisedb
     sys    | plsql_profiler_units      | table | enterprisedb
     sys    | product_component_version | table | enterprisedb
    (16 rows)
    
    slavedb=# select * from tab01;
     id 
    ----
    (0 rows)
    
    slavedb=# select * from tab02;
     id 
    ----
    (0 rows)
    
    slavedb=# 
  • 相关阅读:
    03.分支结构
    02.语言元素
    开博的第一天
    http://mirrors.163.com/centos/7.6.1810/os/x86_64/repodata/repomd.xml: [Errno 14]
    spring boot配置spring-data-jpa的时候报错CannotCreateTransactionException: Could not open JPA EntityManager for transaction; nested exception is java.lang.NoSuchMethodError
    开机自动运行exe
    hibernate.QueryException: Legacy-style query parameters (`?`) are no longer supported 问题
    elasticSearch7____BUG
    idea开发web项目${pageContext.request.contextPath}出现错误
    进阶
  • 原文地址:https://www.cnblogs.com/gaojian/p/3195321.html
Copyright © 2011-2022 走看看