postgres使用dblink

摘要:
在oracle中,dblink通常用于将一些在线数据导入开发库以查找问题。Dblink也可以在postgresql中使用。以下是在线材料:1.如何在postgresql中创建dblink?安装到此步骤时,运行数据库以建立数据库和表$createdbmydb,然后输入/contrib/dblinkmake/makeinstall//。成功后,启动pg_Ctlrestart执行psql-fdbblink Sql-d数据库-U用户名问题2:pgsql=#selectdblink_connect;dblink_ Connect---------OK此函数用于建立与远程数据库的连接。我们可以像这样在远程数据库中插入一条记录:pgsql=#selectdblink_exec;dblink_Exec------------------INSERT225162761现在,让我们从dblinkincident中检索刚才插入的记录:pgsql=#select*;name | pass--------------+--------linux_ prog | 12345怎么样?问题3.使用后,我觉得postgresql比orcale权限设置更严格

在oracle中,经常会使用dblink将一些线上的数据导入到开发库中定位问题。

postgresql中也可以使用dblink。

下面是网上的资料:

        1、如何在postgresql中建立dblink?
        2、建立成功后,如何使用dblink?
        3、postgresql中的dblink和oracle中的dblink有什么区别?

下面是解决的方案:

问题1:

# useradd postgre (自动建立 postgre 组)

解压到 /usr/local/src:
# tar xvfz postgresql-7.1.3.tar.gz
# cd postgresql-7.1.3
# ./configure --prefix=/usr/local/pgsql
# make
# make install
# chown -R postgre.postgre /usr/local/pgsql

# vi ~postgre/.bash_profile

添加:

PGLIB=/usr/local/pgsql/lib
PGDATA=$HOME/data
PATH=$PATH:/usr/local/pgsql/bin
MANPATH=$MANPATH:/usr/local/pgsql/man
export PGLIB PGDATA PATH MANPATH

以 postgres 用户登录,
# su - postgre
建立数据库目录:
$ mkdir data

启动数据库引擎:
[postgre@www postgre]$ initdb
[postgre@www postgre]$ postmaster -i -D ~/data &
这样 PostgreSQL 使用位于 /usr/local/pgsql/data 的数据库,允许 Internet 用户的连接( -i ) ,并在后台运行。
安装到这步时,数据库在运行

建立数据库和表
$createdb mydb

然后进入/contrib/dblink
make /make install
//成功之后 ,启动pg_ctl restart
执行
psql -f dblink.sql -d 数据库 -U 用户名



 
问题2:
pgsql=# select dblink_connect('host=localhost user=pgsql password=');
dblink_connect 
----------------
OK
(1 row)
这个函数用来建立到远程数据库的连接。

我们可以像这样想远程的数据库中insert一条记录:
pgsql=# select dblink_exec('insert into student values(\'linux_prog\',\'12345\')');  
  dblink_exec  
-------------------
INSERT 22516276 1
(1 row)

现在我们检索我们刚才insert的记录:
pgsql=# select * from dblink('select * from student') as student(name varchar(100),pass varchar(100)); 
  name | pass  
------------+-------
linux_prog | 12345
(1 row)

怎么样?刚才insert的记录已经在里面了。


问题3
我用后的感觉就是
postgresql比orcale权限设置更为严格..

免责声明:文章转载自《postgres使用dblink》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇jedis参数不当引发的问题总结Ant design vue table 单击行选中 勾选checkbox下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

SQL Server数据库查询速度慢的原因和解决方法

SQL Server数据库查询速度慢的原因有很多,常见的有以下几种:   1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)   2、I/O吞吐量小,形成了瓶颈效应。   3、没有创建计算列导致查询不优化。   4、内存不足   5、网络速度慢   6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量)   ...

DM7 备份还原、作业、DM 开发

备份还原 备份作用? 1、防止误操作。 2、软硬件故障,做恢复 3、防止天灾。 备份的方式:物理备份和逻辑备份 备份的介质:磁盘,磁带,光盘 集群:数据守护 ,dsc(rac) 也支持第三方的备份软件:上海爱数,鼎甲 物理备份 冷备和热备 冷备:DMAP服务是打开的,数据库实例是关闭的); 方式: 利用控制台工具去备 DMRMAN工具备份: 冷备份,...

Oracle 11g 卸载日志

f:appadminproduct11.2.0dbhome_2deinstall>deinstallChecking for required files and bootstrapping ...Please wait ...复制了 14 个文件复制了 611 个文件已复制 1 个文件。已复制 1 个文件。Location of logs C:Us...

impdp 时无反应

昨天,同事说他在impdp一个数据库,不大,才4G,跑了一天一夜,仍然在Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA不动了。我连进数据库检查了一下,那个impdp进程正在执行BEGIN:1 := SYS.kupc$que_int.get_status (:2, :3);END;正在waiting...

oracle查询连接数、并发数、共享池大小

1、查看当前数据库建立的会话情况: select sid,serial#,username,program,machine,status from v$session; 2、查询数据库当前进程的连接数: select count(*) from v$process; 3、查看数据库当前会话的连接数: select count(*) from v$sessi...

Asp.Net mvc4 项目 在vs中调试正常 在IIS发布后连接oracle数据库时提示数据库连接关闭

解决办法: 1、打开iis,找到发布的程序 2、右键单击“TAKANAPP” 从右键菜单选择“管理应用程序”--“高级设置....” 在打开的高级设置  面板 查看对应的应用程序池 名称 3、设置应用程序池 从右键菜单中选择“设置应用程序池默认设置...” 在打开的对话框中设置“标识”的值...