导入大型数据库 - CPanel & MySQL & PHPMyAdmin
Posted
技术标签:
【中文标题】导入大型数据库 - CPanel & MySQL & PHPMyAdmin【英文标题】:Import a large database - CPanel & MySQL & PHPMyAdmin 【发布时间】:2012-12-18 13:21:45 【问题描述】:我有一个大小超过 100 MB 的数据库。它有.sql.gz
,这意味着它是压缩的。当我尝试使用 phpMyAdmin 导入它时,出现超时错误。我什至尝试了部分导入(允许中断导入,以防脚本检测到它接近 PHP 超时限制。(这可能是导入大文件的好方法,但它可能会中断事务。) ) 这对我不起作用。鉴于我正在使用 CPanel 和 PHPMyAdmin 来完成工作。
如何导入这个数据库?
【问题讨论】:
【参考方案1】:导入大型mysql数据库的非常简单有效的技术。
-
使用命令行控制台
您可以使用 putty for server 访问命令行并执行以下命令
mysql -u 'database_user' -p'database_password' database_name < sql_file_name_with_full_path
-
使用 Cron 作业 [如果控制台不可用]
使用以下命令在 cpanel 中添加一个 cron 作业
mysql -u 'database_user' -p'database_password' database_name < sql_file_name_with_full_path
导入数据库后不要忘记删除 cron 作业。同时从服务器中删除 sql 文件。
这两种技术的命令是相同的
例子
mysql -u 'test_user' -p'123456' test_db < /home1/test/public_html/db.sql
或者如果你没有密码
mysql -u 'test_user' test_db < /home1/test/public_html/db.sql
【讨论】:
谢谢@Moritz 下次我会注意的。【参考方案2】:根据我对hepsiawebhosting.com 服务器的看法和经验,在称为“Tweak setting”的 WHM 设置下设置这些参数会更好更快。在 Tweak 设置下,您可以修改最大上传和最大发布,例如,您可以将上传更改为 120 MiB 并将发布更改为 125 MiB。
另外,在 WHM 下的 PHP 设置中,您可以更改默认套接字和 SQL 超时。您需要增加这些设置。
您还可以解压缩数据库并尝试将其作为简单的 .sql 文件上传。
希望对你有帮助。
为什么没有发布,这里缺少什么?
【讨论】:
【参考方案3】:您可以为此使用BigDump
调整此文件中的数据库配置和字符集
如果您的转储不包含“DROP TABLE”,请删除目标数据库上的旧表
在您的网络服务器上创建工作目录(例如转储)
通过 FTP 将 bigdump.php 和您的转储文件(.sql、.gz)上传到工作目录
从浏览器通过 URL 运行 bigdump.php http://www.yourdomain.com/dump/bigdump.php
如果您启用 javascript,BigDump 可以自动启动下一个导入会话
等待脚本完成,不要关闭浏览器窗口
重要提示:从 Web 服务器中删除 bigdump.php 和您的转储文件
如果超时错误仍然发生,您可能需要调整此文件中的$linepersession
设置。 Read more
【讨论】:
以上是关于导入大型数据库 - CPanel & MySQL & PHPMyAdmin的主要内容,如果未能解决你的问题,请参考以下文章
通过 cPanel 使用 PHP 创建 mysql DB 并导入 *.sql 文件
将文件 sql 导入 cpanel 服务器上的 phpmyadmin 时发生超时错误