将你的网站从mysql改为postgresql

将你的网站从mysql改为postgresql

ID:19710053

大小:59.50 KB

页数:6页

时间:2018-10-05

将你的网站从mysql改为postgresql_第1页
将你的网站从mysql改为postgresql_第2页
将你的网站从mysql改为postgresql_第3页
将你的网站从mysql改为postgresql_第4页
将你的网站从mysql改为postgresql_第5页
资源描述:

《将你的网站从mysql改为postgresql》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、将你的网站从MySQL改为PostgreSQL>>教育资源库  【导读】本文分为两部分,第一部分讲述了我进行这种转换的动机,并一步步地解释了如何将已存在有MySQL的数据转换到Postgres中。第二部分将会解释如何根据新的数据库系统对PHP进行相应的调整。  本文分为两部分,第一部分讲述了我进行这种转换的动机,并一步步地解释了如何将已存在有MySQL的数据转换到Postgres中。第二部分将会解释如何根据新的数据库系统对PHP进行相应的调整。  转换的动机  我第一次了解Postgres是在PHPBuilder网站的一篇文章中。这篇文章将Postgre

2、s和MySQL进行了比较,当时我正在使用MySQL。但是,当我阅读了这篇文章后,我对Postgres着了迷--但是当时我还没有想到对我的网站进行重新的设计。  我继续使用MySQL,因为我的主机提供商只能提供MySQL的支持,这是我所无法改变的。直到有一天,主机提供商的主机崩溃了。我立即换了一个主机提供商,与原来的那个相比,新的主机提供商有很多不同,他们在安全性和稳定性方面对我作出了更多的承诺。新公司试图说服我使用Postgres,因为Postgres要比MySQL来得更稳定,但是我当时没有接受这个建议,因为我的网站已经根据MySQL完成了全部的编码工作

3、。他们只好专门为我的站点安装了MySQL。于是问题开始了。  我的第一个工作是将旧服务器上的MySQL的数据拷贝到新的主机上。首先,我将已有的数据dump到一个SQL文件中,然后在新的主机上导入这个SQL文件。在处理这个数千行的文件时,MySQL迅速地崩溃了。重启MySQL后,其中大概只有一半数据成功地导入了,而且MySQL只能间歇性地工作。最后,他们不得不删除了已经导入的信息让我再试一次。MySQL再次崩溃。这种情况重复了好几次,直到最终我决定将我的SQL文件分割成几块。我不得不又试了几次,最后终于将绝大多数的数据都成功地导入到新的MySQL服务器中。

4、一切都好了,我总算松了一口气。  在下面的几个月中,MySQL几乎每两周都要崩溃一次,其中最惨痛的一次是在2001年6月底。这一次,存储在MySQL中的数据完全被毁坏了。我有一个SQL的备份文件,但是因为上次向MySQL中导入大量数据的痛苦的经历,这一次我再也不想通过这个备份恢复数据了。这时,公司再次建议我对我的网站进行转向,使用Postgres。由于MySQL的失败,最终我接受了这个建议。  将数据从MySQL转移到Postgres中  将数据从MySQL转移到Postgres是一个不大的挑战,因为Postgres比MySQL支持了更多的SQL的标准格

5、式,在POstgres中直接使用SQL的dump结果是不可能的。但是,SQL语法相当相似,因此对于我来说,这并没有花费太多的时间。  对MySQL的Dump结果进行转换  首先,要求你的主机提供商为你的帐号建立一个数据库。和MySQL数据库一样,Postgres的数据库也由一系列包含实际数据的数据表组成。然后,使用mysqldump命令为你的MySQL数据库做一个dump文件。mysqldump-uusername-pdatabasename>sqldump.txt  使用FTP将整个dump文件下载下来。现在在你的计算机上有了这个SQL文件,你可

6、以将其转换成Postgres可以导入的文件。  首先,从dump文件中剪切所有的MySQL的CREATETABLE查询,并将其粘贴到一个单独的文本文件中。下一步是使用Postgres可以理解的语言重新对数据表进行定义。  Postgres建立表的SQL和MySQL非常类似,但不完全一样。下面是一个例子:CREATETABLEpracticetable{someIDSERIAL,timeTIMESTAMPDEFAULTnoeVARCHAR(50),addressVARCHAR(50),cityVARCHAR(50),stateVARCHAR(2),coun

7、tryVARCHAR(3)DEFAULT'USA',postlcodeVARCHAR(15),agesmallint,lattitudereal,longitudereal,someboolboolean,messagetextitem};  在一个Postgres的表定义中,字段名后面必须跟着字段类型。在上面的例子中我们给出了一些最普通的字段类型,你还可以在有关Postgres数据类型的文档中找到全部的字段类型的列表。对于不同的任务,Postgres在字段类型方面有多种选择,并可以存储各种类型的数据,从Inter地址到货币信息到几何对象

8、的定义。这儿简要地介绍最常用的几种数据类型。  SERIAL类型的字段和MySQ

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。