最近,公司要求某网站改版,须要把网站程序和数据库下载下来给程序员。程序文件很简单,打个压缩包直接下载便可。当我查看配置文件查看数据库时,傻眼了,数据库类型为postgresql,之前听都没听过的数据类型,更别说操做了。没办法,只能硬着头皮往下走了。百度一番,查看如何将postgreSQL导出来吧。php
导出数据库结构及mysql
#su – postgres程序员
# pg_dump -U postgres etbtz -f /var/lib/pgsql/etbtz.sqlsql
觉得导出数据就万事大吉了,过了几天,程序员又来了,说是要部署到开发本地。让我帮忙转换成数据库类型为mysql。数据库
使用链接数据库的工具Navicat Premium远程链接服务器,各项配置添加完以后发现服务器拒绝链接。确定须要在postgresQL服务器上设置容许远程链接。服务器
如何配置来完成PostgreSQL数据库远程链接dom
安装PostgreSQL数据库以后,默认是只接受本地访问链接。若是想在其余主机上访问PostgreSQL数据库服务器,就须要进行相应的配置。配置远程链接PostgreSQL数据库的步骤很简单,只须要修改data目录下的pg_hba.conf和postgresql.conf, 其中pg_hba.conf是用来配置对数据库的访问权限,postgresql.conf文件用来配置PostgreSQL数据库服务器的相应的参数。下面介绍配置的步骤:socket
1.修改pg_hba.conf文件,配置用户的访问权限:ide
# TYPE DATABASE USER CIDR-ADDRESS METHOD工具
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 trust
host all all 192.168.1.0/24 md5
# IPv6 local connections:
host all all ::1/128 trust
其中红色标识的内容为新添加的内容,表示容许网段192.168.1.0上的全部主机使用全部合法的数据库用户名访问数据库,并提供加密的密码验证。在咱们的环境中,咱们须要在主机192.168.1.5上使用postgres用户访问192.168.1.9上的PostgreSQL数据库。
2.修改postgresql.conf文件,将数据库服务器的监听模式修改成监听全部主机发出的链接请求。
定位到#listen_addresses='localhost'。PostgreSQL安装完成后,默认是只接受来在本机localhost的链接请求,经过将改行内容修改成listen_addresses='*'来容许数据库服务器监听来自任何主机的链接请求:
listen_addresses = '*' # what IP address(es) to listen on;
# comma-separated list of addresses;
# defaults to 'localhost', '*' = all
# (change requires restart)
修改以后,保存并退出,而后重起数据库,就能够在在远程机器上访问PostgreSQL数据库了。
重启数据库:service postgresql restart
再次尝试本地链接,这时候发现已经能够链接了。
postgresql转mysql工具
在网上搜集了一些关于postgresql 转mysql的文章,大多都是说先从postgresql 中导出sql 脚本,而后把sql 脚本中的一些写法手动改为mysql 格式的,心想着若是是一个大数据公司,要将数据转储为mysql ,也一样手动改?
www.2cto.com
因而找到了一个各数据库之间的转换工具 DBConvert for MySQL & PostgreSQL,可实现数据库之间的转换,很是方便,固然你们都知道方便的软件确定不费免费给你,安装这个软件后,点试用,可让你有一段时间的使用时间,进去便可对数据库时间进行转换了。
步骤一:点试用
步骤二:选择数据源并链接相应数据源的数据库,我这里是postgresql,选择相应要转换的database,测试链接成功后点下一步
步骤三:下一步则是填写目标数据库的链接和目标database,个人目标数据库是mysql
步骤四:点下一步便可看到相应的表和表结构,点下一步执行便可。
只要该填的地方没填错, 整个转换过程很是流畅,在这里不得不佩服国外友人的技术之强大啊。
附下载地址:http://dbconvert.com/convert-mysql-to-postgresql-pro.php?DB=3