zoukankan      html  css  js  c++  java
  • magento数据库备份导入还原

    Magento数据库备份、移植终极解决方案+3

    分类:Magento教程 标签:magento搬家magento数据库备份magento更换域名magento移植 4,355人浏览

    作为电子商务购物车系统解决方案,Magento数据库结构相当复杂,以至于普通的数据库备份方式几乎无法成功备份,即使成功备份,导入数据库也不是一件简单的事情。另一方面,作为一款购物车系统,从安全角度来说,每天备份数据毫不为过。更换域名,更换服务器都多多少少牵涉到Magento的数据库备份相关知识。本文由锐想外贸电子商务解决方案提供,为Magento使用者总结下数据库备份、移植的一个方案。

    Magento数据库备份实际上时间非常简单的事情,网上有许多类似的文章使用PHPMyAdmin导出数据库并在生成的sql文件头尾部添加一段sql代码避免外键导致的备份、移植失败。在之前的Magento数据库备份当中,我也在一直采取这种方式,一直到公司站点的数据库超过1G之后,再也无法通过这种方式进行备份了。首先在Windows环境下,很难找到编辑器打开大于1G以上的文件,EditPlus和Zend Studio均告失败,虽然UltraEdit成功打开,但是大概需要一根烟的时间,并且添加sql代码并保存的过程相当痛苦。

    备份Magento数据库

    经过多个Magento数据库备份方案的对比与尝试,最终决定使用Magento后台自带的Backups Tool工具进行数据库备份。通过该方法备份的数据库文件相比从phpMyAdmin中备份的文件,具有如下几个优点,

    • sql文件已经自动压缩为.gz文件,体积相对较小。本站数据库大概为1.7G,压缩后的gz文件只有87Mb
    • 不需要打开文件添加首位sql代码。Magento在生成该文件时已经自动添加外键关联

    说了那么多有点,下面一步步具体了解下如何进行操作。首先,通过如下步骤,进入到Magento内置的数据库备份工具页面中,

    System->Tools->Backups

    进入该页面之后直接点击右侧的Create Backup按钮,根据数据库大小,等待相应时间之后即可生成一份数据库备份文件。如下图所示。

    根据你当前的操作系统,如果是Windows环境的话(相信大多数人使用的都是该系统桌面环境),点击7-Zip即可下载压缩之后的文件,而使用Linux桌面环境的可以下载gz文件。获得该文件之后,可以通过解压工具将数据库文件解压出来,这里需要注意的是,解压出来的文件是没有文件扩展名的,我们需要将其重命名为xxx.sql文件。这样,导入之前的准备工作就结束了(PS:这里需要将该文件的位置记录下来,在命令行导入该文件时需求路径信息)。接下来就是如何将该文件导入到新的数据库中。

    导入Magento数据库

    同样是总结了多个Mysql数据导入方案之后,最终选择了通过Mysql命令行工具进行导入,而非网上较多通过phpMyAdmin导入的方法。通过phpMyAdmin进行导入较大的数据库文件时,需要顾及到PHP以及Apache的相关配置,比如最大Post值,最大upload值以及脚本最大运行时间,作者在通过PMA导入时就曾遇到过”脚本超时,如果你要完成导入,请重新提交相同的文件,导入将会继续进行”等各种问题。而直接通过Mysql命令行工具,则不需要顾及这些,并且该工具的使用也是相当简单。

    Windows桌面环境下可以使用CMD或者MySQL 5.5 Command Line Client数据库管理工具进入数据库,Linux桌面环境及服务器可以直接使用命令行工具或者SSH。进入数据库之后,选择需要导入的数据库,运行如下命令,

    01

    source /var/www/html/xxx.sql

    根据你的数据库大小,等待相应时间。到此,Magento备份的数据库顺利导入到新库中。整个导入过程也进入收尾阶段。如果说你没有更换域名,并且新导入的库与原始数据库的名字是一样的,那么到此,你的新Magento网站就可以顺利打开了。那么如果新的数据库名更换了,或者说你更换了域名,该如何操作呢?

    Magento域名变更操作

    Magento数据库core_config_data表中记录了购物车系统的域名地址,在初次创建购物车的时候,系统会自动读取并将网站地址些人该表中。当更换域名时,需要修改表中的记录,否则Magento无法识别当前域名,导致生成的url地址都是老域名地址。修改该记录非常简单,进入phpMyAdmin,选择core_config_data表中的path字段对应的web/unsecure/base_url和 web/secure/base_url的value值并更改为当前域名地址即可,切忌不可缺少http以及域名结尾的/斜杠!如下图所示,

  • 相关阅读:
    笨方法学python中执行argv提示ValueError: not enough values to unpack (expected 4, got 1)
    VMware workstation安装
    Redis bigkey分析
    MySQL drop table 影响及过程
    MySQL 大表硬连接删除
    ES elasticsearch 各种查询
    ES elasticsearch 各种聚合
    ES elasticsearch 聚合统计
    ES elasticsearch 实现 count单字段,分组取前多少位,以地理位置中心进行统计
    MySQL行溢出、varchar最多能存多少字符
  • 原文地址:https://www.cnblogs.com/focai/p/4167125.html
Copyright © 2011-2022 走看看