目前我有两台机器,

分别已经安装了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=#

PPAS上运行pg_dump经过的更多相关文章

  1. PPAS上运行pg_dump经过II

    这一次,我用三台机器. 其他步骤和<PPAS上运行pg_dump经过>中讲到的一样. http://www.cnblogs.com/gaojian/p/3195321.html 只是,pg ...

  2. 在传统.NET Framework 上运行ASP.NET Core项目

    新的项目我们想用ASP.NET Core来开发,但是苦于我们历史的遗产很多,比如<使用 JavaScriptService 在.NET Core 里实现DES加密算法>,我们要估计等到.N ...

  3. Hyper-V上运行的Linux虚拟机验证是否安装了集成服务

    Hyper-V上运行的Linux虚拟机验证是否安装了集成服务 ps aux|grep "hv"root       311  0.0  0.0      0     0 ?     ...

  4. 通过Mono 在 Heroku 上运行 .NET 应用

    英文原文:Running .NET on Heroku 中文原文:在 Heroku 上运行 .NET 应用 自从加入了Heroku之后,我就想在这个平台上运行.NET程序.现在我很高兴向大家宣布,我们 ...

  5. Linux上运行NET

    今天尝试了下Ubuntu上运行NET程序,按照 https://github.com/aspnet/Home 的指引,一步一步来: 1.安装DNVM(原名KVM) Linux控制台下输入 curl - ...

  6. Mono 4.0 Mac上运行asp.net mvc 5.2.3

    Mono 4.0 已经发布,二进制包已经准备好,具体的发布说明参见:http://www.mono-project.com/docs/about-mono/releases/4.0.0/. 今天在Ma ...

  7. ASP.NET Core 中文文档 第二章 指南(5) 在 Nano Server 上运行ASP.NET Core

    原文 ASP.NET Core on Nano Server 作者 Sourabh Shirhatti 翻译 娄宇(Lyrics) 校对 刘怡(AlexLEWIS).许登洋(Seay).谢炀(kile ...

  8. 【无私分享:ASP.NET CORE 项目实战(第十章)】发布项目到 Linux 上运行 Core 项目

    目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 ASP.Net Core 给我们带来的最大的亮点就是跨平台,我在我电脑(win7)上用虚拟机建了个 CentOS7 ,来演示下 ...

  9. 玩儿转物联网IoT - 在Beagle Bone Black上运行node.js 程序

    物联网(IoT)技术方兴未艾,智能手环,智能血压计,智能眼镜甚至智能鞋垫都开始进入我们的生活,各种智能设备层出不穷,世界已经到了一个"人有多大胆,地有多大产"的时代,不玩儿点物联网 ...

随机推荐

  1. file的getPath getAbsolutePath和getCanonicalPath的不同

    file的这几个取得path的方法各有不同,下边说说详细的区别 概念上的区别:(内容来自jdk,个人感觉这个描述信息,只能让明白的人明白,不明白的人看起来还是有点难度(特别试中文版,英文版稍好些)所以 ...

  2. Effective java笔记7--线程

    一.对可共享数据的同步访问 synchronized关键字可以保证在同一时刻,只有一个线程在执行一条语句,或者一段代码块.正确地使用同步可以保证其他任何方法都不会看到对象处于不一致的状态中,还能保证通 ...

  3. MySql通用分页存储过程

    MySql通用分页存储过程 1MySql通用分页存储过程 2 3过程参数 4p_cloumns varchar(500),p_tables varchar(100),p_where varchar(4 ...

  4. HDU3333 Turing Tree 离线树状数组

    题意:统计一段区间内不同的数的和 分析:排序查询区间,离线树状数组 #include <cstdio> #include <cmath> #include <cstrin ...

  5. 使用Drush管理Drupal站点

    Drush(Drush = Drupal + Shell)就是使用命令行命令来操作Drupal站点,它的命令格式与git类似,都是双字命令(drush + 实际的命令).既然是命令行命令,也就可以使用 ...

  6. UDP模式与TCP模式的区别

    1.TCP有连接状态,而UDP没有. 2.TCP应用层使用无需考虑包的大小及发送情况,而UDP需要. 3.TCP中IP包大小的决定者是Socket,而UDP为应用层.

  7. Windows 下命令行修改文件夹的控制权限 Cacls

    设置用户访问权限:我们经常要修改目录和文件的访问权限,使用Cacls命令就很容易做到.下面要赋予本机用户testuser对d盘下 test目录及其所有子目录中的文件有完全控制权限.在命令提示符对话框中 ...

  8. 数往知来 ASP.NET_多线程_Socket<十五>

    一.ASP.NET B/S  做网站(动态).管理系统(OA,进销存等) C/S--窗体软件 为什么现在很少用C/S做进销存等软件 B/S部署方便   C/S要安装 动态:与服务器(IIS(软件))进 ...

  9. linux c编程 -- 线程互斥

    #include <stdio.h> #include <pthread.h> #include <unistd.h> #include <stdlib.h& ...

  10. 如何创建Asp.net MVC ViewModel

    ASP.NET MVC View Model Patterns Since MVC has been released I have observed much confusion about how ...