【已解决】通过PhpMyAdmin导入sql数据库文件后白屏

【背景】

折腾:

【记录】将备份好的hawkhost上的crifan.com的网站文件和数据库恢复到新虚拟主机糖果主机上

期间,通过phpMyAdmin去导入sql文件后:

show is uploading sql file please wait

结果稍等了一会,不是出现的导入成功,而是竟然白屏了:

不知道是已经导入了,还是出错了。。。phpMyAdmin blank screen after import sql

【解决过程】

1.再稍等片刻,重新点击数据库看看。

结果果然是没有导入

can not find table in database sql

2.重新导入一次。。

不过刚注意那句“压缩文件名必须以 .[格式].[压缩方式] 结尾。如:.sql.zip

猜测是文件名的原因,所以去重新命名:

rename to .sql.zip then import again

然后再去导入:

import .sql.zip file to database

估计就可以了。

但是结果也是白屏。。。

3.突发奇想,或许是由于文件名太长,导致路径太长内部处理出问题了?

所以去把文件名改短试试:

short file name then retry

结果还是白屏。。。。

4.参考:

phpmyadmin支持导入zip数据库方法 | 学步园

去想办法找到当前服务器中对于php方面的配置,但没找到。

5.参考自己的:

【记录】网站搬家之在新空间hawk的cpanel的phpMyAdmin中创建对应的数据库以及用户 | 在路上

去重新登录cpanel中的PhpMyAdmin,看看是否数据导入过了。

结果还是空的。。

6.突然想到,难道是由于用了windows下的WinRar的zip方式压缩,导致linux服务器中的PhpMyAdmin不识别?应该不至于吧。

7.参考:

phpMyAdmin导入和恢复大体积SQL文件_源码_站长之家ChinaZ.com

http://down.chinaz.com/try/201106/755_1.htm

通过cpanel中文件管理器去找找,是否能找到PhpMyAdmin的东西。

然后没有找到。。。

8.然后去搜:

phpmyadmin import sql blank screen

果然有人遇到类似问题:

MySQL, importing from file, #2006 error, phpmyadmin blank | Drupal.org

phpMyAdmin / Bugs / #3690 Blank page after big file upload

他那是3.3.7版本的PhpMyAdmin,而我这里去看了下是:

"版本信息: 4.0.10.7,最新稳定版本: 4.3.8"

phpMyAdmin current version is 4.0.10.7 and recent stable is 4.3.8 version

然后注意到页面左下角提示:

phpMyAdmin got new version please consider to upgrade

可惜我不是管理员,暂时没法升级。。。

9.再搜:

cpanel phpmyadmin import sql blank screen

找到:

Table Importing Issue with phpMyAdmin – cPanel Forums

Help – Blank Page after importing sql.. – PHPFox 3 Requests & Support – PHPFox Camp

说是:

the problem is due to SQL import of a previous version on a new version

the trick is to import specific tables not all tables

because in all tables the version info will also be imported and when the system will check via SQL the version mismatch will provide you error.

secondly there is a chance of modules enabled in previous sql

and here they are not found but the sql is pointing so the white screen of doom will exist.

Disable all 3rd party modules via SQL and clear your site cache via Filemanager

hopefully site will recover.

感觉说的有理,又好像没道理。。。

另外,我这里也没有权限去禁止掉什么所谓第三方的模块。。。

关键是文件管理器中也找不到什么可以禁止的,只是文件管理而已。。。

然后发现帖子作者也问了同样问题“Awesome.. but how to disable them? Do I have to drop the tables of modules like cometchat and the themes,add-ons?? or what? ”

10.参考了PhpMyAdmin文档:

Installation — phpMyAdmin 4.0.10.7 documentation

也没用。

11.然后再去参考:

空间后台Cpanel如何导入大数据库 | 春与秋博客 — 记事,关注,分享,回忆的个人博客

cpanel如何导入大体积数据库 | 老谢博客

去尝试通过cron导入数据库。

cpanel into cron task

然后通过ftp上传了一个文件,确定了当前服务器的时间:

use pic upload to determine current server time

和本地是基本一致的。

所以可以设置时间在2分钟之后。

不过还是简单设置1分钟执行一次吧:

命令是:

mysql -uXXX -pi@GDQgpB0BVi YYY < /ZZZ/AAA/crifan-com-default-1-database-2015-01-11-10-59-03.sql

add new cron task to do

 

cpanel has successfully added cron task

其中的:

(1)数据库名,数据库用户名,数据库用户的密码

都可以到 MySQL数据库:

cpanel into mysql database

中找到的。

(2)对于数据库的sql文件,先是上传了zip格式的,然后解压后得到sql文件:

cpanel file manager extract got sql file

然后就等过了一分钟左右之后,赶快去PhpMyAdmin中看看数据是否导入了:

果然是导入了:

now really import database items show in phpmyadmin

 

然后及时去删除cron任务:

remove all cron task

 

然后现在貌似是:

网站的全部文件都OK了;

网站内部的sql数据库也OK了;

 

【总结】

当通过phpMyadmin导入,相对比较大的,sql文件的时候,则会导致导入后,白屏,而导入失败,数据库中的数据没有导入进来。

解决办法是:

(可以通过ftp或者是cpanel的文件管理器)先上传sql文件到服务器上

通过添加cron任务的办法,定时让后台自己运行mysql的命令,去导入sql文件,即可。



发表评论

电子邮件地址不会被公开。 必填项已用*标注

无觅相关文章插件,快速提升流量