如何实现在ARM开发板对Postgresql服务器的远程访问,有C程序,(mini6410,mini2440,tq2440)

如何实现在ARM开发板对Postgresql服务器的远程访问,有C程序,(mini6410,mini2440,tq2440),第1张

概述本文中,将总结自己如何实现在ARM开发板对Postgresql服务器的远程访问,有C程序,具体步骤如下: 1ubuntu10.10下 postgresql安装及配置 1.1.安装 postgresql,命令如下: #apt-get install postgresql ( 命令开头的 # 代表当前为 root 用户,下同 ) 系统会提示安装所需磁盘空间,输入 "y" ,安装程序会自动

本文中,将总结自己如何实现在ARM开发板对Postgresql服务器的远程访问,有C程序,具体步骤如下:
1ubuntu10.10 postgresql安装及配置

1.1.安装 postgresql,命令如下:

#apt-get install postgresql

( 命令开头的 # 代表当前为 root 用户,下同 )

系统会提示安装所需磁盘空间,输入 "y" ,安装程序会自动完成。 安装完毕后,系统会创建一个数据库超级用户“ postgres”, 密码为空。这个用户既是不可登录的 *** 作系统用户,也是数据库用户。

1.2.修改 linux用户 postgresql的密码

1.3.修改数据库超级用户 postgres的密码:

1) 切换到 linux postgres 用户

#su postgres

2) 登录 postgres 数据库

$psql postgres

这样你会看到 postgres 提示信息如下:

psql (8.4.6)

输入 "help" 来获取帮助信息 .


postgres=#

注意:如果此处不能进入,则需要修改 /etc/postgresql/8.4/main/pg_hba.conf 中的

# Database administrative login by UNIX sockets

local all postgres IDent

其中的 IDent替换为: trust(信任,不需要密码验证),即:

local all postgres trust

然后重启 postgresql数据库 ,命令为: #/etc/init.d/postgresql restart,然后执行 修改数据库超级用户 postgres的密码的步骤

3) 输入如下命令,器中的 password替换为你的密码,

ALTER USER postgres with PASSWORD 'password'

键入“ /q” 返回到 linux 命令行。

1.4. 添加自己定义的用户和数据库

1) 添加新用户

# createuser -drSP yuyanchao

为新角色输入的口令 :

再输入一遍 :

口令 :

按照提示输入该用户的密码 yycpassword

2) 创建一个属于自定义用户 yuyanchao 的数据库

切换到用户 yuyanchao

#su yuyanchao

创建数据库

$createdb -O yuyanchao yycdb

5. 配置本地服务器的远程访问

1) /etc/postgresql/8.4/main/pg_hba.conf 中添加 :

host all all 192.168.1.1/24 md5

其中的 24 代表子网掩码为 24 位, 代表 192.168. 1 .1-192.168. 1 .254 的都能够访问本地数据库。这里假设本地的该服务器 ip 和需要远程连接该服务器的 ARM 板中 linux 系统的 ip 均在 192.168. 1 .1-192.168. 1 .254 之间。

2)修改 /etc/postgresql/8.4/main/postgresql.conf 中的 Listen_address '*' ,如下:

Listen_address = '*'

3)重启数据库

#/etc/init.d/postgresql-8.4 restart

2.ARM板上 psql的安装以及如何远程访问 postgresql数据库

2.1.下载源码, http://www.postgresql.org/ ,本人下载的是 postgresql-8.4.6,进入目录,交叉编译,命令如下:

其中的 <your own dir>,是你的安装目录,本人选的是: /mini6410_ln/root_nfs/

2.2.将安装目录 <your own dir> bin目录和 lib目录下的文件拷贝到 ARM板的 linux系统下的 bin lib目录中

2.3.远程连接服务器上的 postgresql数据库

#psql -h 192.168.1.102 -U yuyanchao -d yycdb

命令中 192.168.1.102是我的服务器的 IP地址,要根据情况替换为正确的 IP

如果出现:

Password for user yuyanchao:

psql (8.4.6)

Type "help" for help.


yycdb=>

则说明访问成功!


3.使用 C语言程序实现 ARM板对服务器的访问

3.1.testlibpq .c 程序如下:

3.2.Makefile文件内容如下:



Makefile 文件说明: ArmlIBS = /mini6410_ln/root_nfs/lib 中的 /mini6410_ln/root_nfs/ 目录是本人交叉编译是的目录。

3.3. testlibpq.c Makefile 文件放在同一个目录中,运行命令:

#make testlibpg-arm

即可生成可执行文件 testlibpg-arm

注意:也可以不用 Makefile 文件,而采用命令直接生成,只需执行如下两个命令:

#arm-linux-gcc -I/usr/include/postgresql -c testlibpq.c -o testlibpq.o

#arm-linux-gcc -o testlibpq-arm testlibpq.o -L/mini6410_ln/root_nfs/lib -lpq

同样: /mini6410_ln/root_nfs/lib 中的 /mini6410_ln/root_nfs/ 目录是本人交叉编译是的目录。

3.4. testlibpg-arm 拷贝到 ARM 板的 linux 系统中,在 ARM 板中执行:

#chmod 777 testlibpq-arm

#./testlibpq-arm "host=192.168.1.102 user=yuyanchao dbna me=yycdb password=123456"

出现

datname datdba enCoding datcollate datctype dati

template1 10 6 en_US.utf8 en_US.utf8 t }

template0 10 6 en_US.utf8 en_US.utf8 t }

postgres 10 6 en_US.utf8 en_US.utf8 f

yycdb 16426 6 en_US.utf8 en_US.utf8 f

或者类似信息,说明链接成功!

总结

以上是内存溢出为你收集整理的如何实现在ARM开发板对Postgresql服务器的远程访问,有C程序,(mini6410,mini2440,tq2440)全部内容,希望文章能够帮你解决如何实现在ARM开发板对Postgresql服务器的远程访问,有C程序,(mini6410,mini2440,tq2440)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/1179761.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存