phpMyAdmin导入大的sql文件
其次,找到phpMyAdmin的目錄,找到根目錄下的config.inc.php文件,然后找到 $cfg['UploadDir'] ,通過注釋(Directories for saving/loading files from server)就可以看出這是用來導入服務器上的SQL文件的方法。相對的就是 $cfg['SaveDir'] ,顧名思義就是把導出的SQL文件保存在服務器上的目錄中。 修改這個參數 $cfg['UploadDir'] = 'ImportSQLFile'; $cfg['SaveDir'] = 'ExportSQLFile'; 然后在phpMyAdmin中建立兩個文件夾,ImportSQLFile和ExportSQLFile,一個用作大數據的導入,一個用作數據導出備份。 然后把我們需要導入的sql文件復制到ImportSQLFile中,上傳到服務器上,選擇需要導入的數據庫名,選擇導入(Import),就會發現在文件導入(File to import)的地方多出來一個導入服務器上的SQL文件(web server upload directory)
最近一次在用phpmyadmin導入mysql數據庫時,偶的15M的數據庫不能導入,mysql數據庫最大只能導入2M..
phpmyadmin數據庫導入出錯:
You
probably tried to upload too large file. Please refer to documentation for ways
to workaround this
limit.
可以修改導入數據庫文件最大限制嗎?
到網上搜索了一下前人的解決辦法,大多數都說修改php.ini中的upload_max_filesize,但修改了這個以后,還是提示這個問題;但 phpmyadmin在提示這個問題的時候,右下角有一行英文提示,大致意思是說,解決這個問題,可以參考phpmyadmin文檔;直接點擊這個鏈 接,phpmyadmin自動查找到了以下說明:
[1.16]
I cannot upload big dump files (memory, http or timeout problems).
Starting
with version 2.7.0, the import engine has been re–written and these problems
should not occur. If possible, upgrade your phpMyAdmin to the
latest version to take advantage of the new import features.
The first
things to check (or ask your host provider to check) are the values of
upload_max_filesize, memory_limit and post_max_size in the php.ini configuration
file. All of these three settings limit the maximum size of data that can be
submitted and handled by PHP. One user also said that post_max_size and
memory_limit need to be larger than
upload_max_filesize.
以上文件大致說明的意思就是說,遇到導入過大文件時,首先檢查php.ini
配置文件中的以下三個地方,upload_max_filesize, memory_limit
和post_max_size,并且推薦修改的值要稍大于導入的巨大sql數據庫文件;依照這個提示,我修改了以上三個在php.ini中的值以后,重啟了php環境,再次導入時,雖然phpmyadmin還是顯示導入最大限制:20,480
KB,但巨大的80M數據庫文件已經被成功的導入 了。>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 如何在mysql中批量導入大的sql文本文件?
在實際工作中,有時經常地時行mysql數據庫的導入和導入操作,但對于大型sql文件導入時,phpmyadmin是不行的,有太多限制,比如記錄,內存等! 比較好的辦法仍是用mysql的source命令:
一、在客戶端下操作:
1、進行入客戶端
2、mysql>use
數據庫名(如果沒有,先建一個)
3、mysql>set names ‘utf8′;
(一般看導入的是什么格式的文件)
4、mysql>source
d:\\aaa.sql;
即可正常導入,如果有錯,可以看出錯提示 二、PHP文件操作:
建立a.php
里面有下面內容
mysql_connet(‘xxxx’);
mysql_query(“set
names ‘utf8′”);
mysql_query(“source
d:\\aaa.sql’”);原理同上,主要方便了無法使用命令行用戶的操作
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
如何在mysql中批量導入大的sql文本文件?
$file_name=”sql.sql”; //要導入的SQL文件名
$dbhost=”localhost”;
//數據庫主機名
$dbuser=”user”; //數據庫用戶名
$dbpass=”pass”;
//數據庫密碼
$dbname=”dbname”;????? //數據庫名??????? set_time_limit(0);
//設置超時時間為0,表示一直執行。當php在safe mode模式下無效,此時可能會導致導入超時,此時需要分段導入
$fp =
@fopen($file_name, “r”) or die(“不能打開SQL文件 $file_name”);//打開文件
mysql_connect($dbhost, $dbuser, $dbpass) or die(“不能連接數據庫 $dbhost”);//連接數據庫
mysql_select_db($dbname) or die (“不能打開數據庫
$dbname”);//打開數據庫
mysql_query(‘set names utf8′);
echo
“正在執行導入操作”;
while($SQL=GetNextSQL()){
if
(!mysql_query($SQL)){
echo
“執行出錯:”.mysql_error().”
“;
echo
“SQL語句為:
“.$SQL.”
“;
};
}
echo
“導入完成”;
fclose($fp) or die(“Can’t close file
$file_name”);//關閉文件
mysql_close();
//從文件中逐條取SQL
function GetNextSQL() {
global $fp;
$sql=”\";
while ($line = @fgets($fp, 40960)) {
$line = trim($line);
//以下三句在高版本php中不需要,在部分低版本中也許需要修改
$line =
str_replace(“\\\\\\\\”,”\\\\”,$line);
$line =
str_replace(“\\’”,”’”,$line);
$line =
str_replace(“\\\\r\\\\n”,chr(13).chr(10),$line);
//??????????????????????? $line
= stripcslashes($line);
if (strlen($line)>1)
{
if ($line[0]==”-” && $line[1]==”-”)
{
continue;
}
}
$sql.=$line.chr(13).chr(10);
if
(strlen($line)>0){
if
($line[strlen($line)-1]==”;”){
break;
}
}
}
return $sql;
}
?>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
mysql如何導入大SQL文件
今天需要對MYSQL導入一個13M的SQL文件,可是PHPMYADMIN只支持到2M,網上找了找,發現可以使用source命令,以下就是方法:
1.導入數據庫
常用source
命令
進入mysql數據庫控制臺,
如mysql -u atyu -p
mysql>use
web3guo
然后使用source命令,后面參數為腳本文件(如這里用到的.sql)
mysql>source
c:\\web3guo.sql
2.導出整個數據庫
mysqldump -u 用戶名 -p 數據庫名 >
導出的文件名
3.導出一個表
mysqldump -u 用戶名 -p 數據庫名 表名>
導出的文件名
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>MySQL 導入大SQL文件
2008年02月08日
星期五 下午
07:21剛導入一個從mysql庫導出的300多M的備份文件,因為phpmyadmin最多支持8M的,文件太大IE停止響應,所以在本地用
mysql -u
root -p yourpassword yourdatabasename
導出簡單命令:
mysqldump -u 用戶名 -p 數據庫名
> 導出的文件名
mysqldump -u root -p student
>d:\\student.sql>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Mysql導入大數據庫文件的辦法
phpmyadmin是個很方便的mysql數據庫管理工具,可以用來管理mysql數據庫,導入,導出等。
但是phpmyadmin在導入mysql的時候有個問題,如果要導入的數據庫文件比較大,那么導入就會失敗。下面教大家一個簡單有效的辦法,可以導入任意大小的mysql數據庫,理論上不論您的數據庫備份文件多大,都可以導入。
方法如下:
1.將數據庫備份文件(如backup.sql)上傳至網站根目錄。
2.將以下代碼保存為mysql.php文件,上傳至網站根目錄。
system(“mysql
-hdbhost -udbuser -ppassword dbname
其中
dbhost
改為您的數據庫服務器地址(小提示:一般主機默認數據庫服務器地址是:localhost)
dbuser 改為您的數據庫用戶名
password
改為您的數據庫用戶密碼
dbname
改為您的數據庫名
backup.sql表示通過ftp上傳到網站根目錄下數據庫文件的文件名(該文件是解壓縮后的文件)
3.在瀏覽器里面訪問mysql.php,假設你的網站域名是http://shop.tianxinled.com,那么就在瀏覽器里面輸入http: //shop.tianxinled.com,只要瀏覽器一訪問這個mysql.php文件,數據就開始導入,數據導入結束后,就會顯示“導入成功”的字 樣。這個時間根據您要導入的數據大小決定,一般時間很短。
轉載于:https://www.cnblogs.com/beyondhjjyt/archive/2013/03/28/3046528.html
總結
以上是生活随笔為你收集整理的phpMyAdmin导入大的sql文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: javascript删除数组里的对象
- 下一篇: phpMyAdmin 安装错误解决方法