CentosPostgresql连接测试(Perl和Ruby)

Posted 云中客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentosPostgresql连接测试(Perl和Ruby)相关的知识,希望对你有一定的参考价值。

Centos安装了PostgreSQL之后,将考虑如何让Perl与Ruby连接它。

Perl连接方式

1,安装Perl的数据库连接包

  • perl-DBD-Pg
  • perl-DBI
yum install perl-DBI.x86_64 perl-DBD-Pg.x86_64

2,连接测试

vi testPerl.pl
#!/usr/bin/perl

use DBI;

# PostgreSQL
our $DB_NAME = "testDB";
our $DB_USER = "test";
our $DB_PASS = "Admin";
our $DB_HOST = "198.192.69.1";
our $DB_PORT = "5432";

my $dbh = DBI->connect("dbi:Pg:dbname=$DB_NAME;host=$DB_HOST","$DB_USER","$DB_PASS") or die "$!
 Error: failed to connect to DB.
";
my $sth = $dbh->prepare("SELECT now();");
$sth->execute();
while (my $ary_ref = $sth->fetchrow_arrayref) {
  my ($row) = @$ary_ref;
  print $row , "
";
}
$sth->finish;
$dbh->disconnect;

1;
#修改执行权限
chmod 777 testPerl.pl

#执行测试
 ./testPerl.pl
2018-08-31 18:09:28.357691+09

成功的场合就会显示时间数据。

Ruby连接方式

 1,安装Ruby的数据库连接包

pg-0.18.4.gem

下载地址:https://rubygems.org/gems/pg/versions/0.18.4

/usr/sbin/td-agent-gem install pg-0.18.4.gem

Building native extensions.  This could take a while...
Successfully installed pg-0.18.4
Parsing documentation for pg-0.18.4
Installing ri documentation for pg-0.18.4
Done installing documentation for pg after 2 seconds
WARNING:  Unable to pull data from https://rubygems.org/: Errno::ENETUNREACH: Network is unreachable - connect(2) for "api.rubygems.org" port 443 (https://api.rubygems.org/specs.4.8.gz)
1 gem installed

2,连接测试

vi test.rb    
    
require pg    
    
connect = PG::connect(host:"198.192.69.1",user:"test",password:"Admin",dbname:"testDB",port:"5432")    
results = connect.exec("select current_date hoge")    
    
results.each{|result|    
   p result["hoge"]    
}    
    
connect.finish    
#修改执行权限
chmod 777 test.rb                                                            
        
#执行测试                                                    
/opt/td-agent/embedded/bin/ruby test.rb                                                            
2018/8/31                                                            

成功的场合就会显示时间数据。

 

以上是关于CentosPostgresql连接测试(Perl和Ruby)的主要内容,如果未能解决你的问题,请参考以下文章

24-Perl 数据库连接

Perl“Net::SFTP”模块的 SFTP 连接失败

Perl 连接 MySQL,DBI怎么安装?

perl - 帮助修改代码以包含子例程的使用

Perl文件测试操作和stat函数

无法通过 perl 绑定连接 selenium webDriver