å¨mysqlä¸å¯¼å
¥/导åºè¶
大çsqlææ¬æ件,æ们å¯ä»¥ä½¿ç¨å¾å¤æ¹æ³å®ä¾ï¼å¦æ:客æ·ç«¯ç´æ¥å½ä»¤æä½,åå导å
¥,客æ·ç«¯ç¨sourceå½ä»¤æä½ççã
å¨å®é
å·¥ä½ä¸ï¼ææ¶ç»å¸¸å°æ¶è¡mysqlæ°æ®åºç导å
¥å导å
¥æä½ï¼ä½å¯¹äºå¤§åsqlæ件导å
¥æ¶ï¼phpmyadminæ¯ä¸è¡çï¼æ太å¤éå¶ï¼æ¯å¦è®°å½ï¼å
åç!
å¤ç§æ¹æ¡æ¶éï¼å¦ä¸ï¼
æ¹æ¡ä¸ï¼å®¢æ·ç«¯ç´æ¥å½ä»¤æä½(æ¤æ¹æ³æ¯ææ¯è¾å欢ç)
ããåæ¢å¤ä¸ä¸ªçµåç½ç«mysqlå¤ä»½æ°æ®ï¼æ¤å¤ä»½æ件æ300å¤Mï¼å 为phpmyadminæ¯æä¸ä¼ æéï¼æ件太大IEåæ¢ååºï¼æ以å¨æ¬å°ç¨
代ç å¦ä¸
å¤å¶ä»£ç
ããmysql -u root -p root jiahuibuydb<
c:/yebihai.sql
ããä½æ²¡å¯¼å
¥è¿å»ï¼åºæ¥ä¸å¤§å mysqlçåæ°æ示ï¼ä¸è®¤è¾å
¥çå½ä»¤åæ°ï¼åæ¥åæä¸é¢è¿ä¸ªæ ·åï¼å°±æ¯å»æäºåæ°åæ°æ®ä¹é´çç©ºæ ¼
代ç å¦ä¸
å¤å¶ä»£ç
ããmysql -uroot -proot jiahuibuydb<
c:/yebihai.sql
ãã导å
¥å°±OKäº
ãã导åºå½ä»¤:
ããa)导åºæ´ä¸ªåº
ããmysqldump -u ç¨æ·å -p æ°æ®åºå > 导åºçæ件å
代ç å¦ä¸
å¤å¶ä»£ç
ããmysqldump -u root -p student
>d:/yebihai.sql
ããb)导åºä¸ä¸ªè¡¨
ããmysqldump -u ç¨æ·å -p æ°æ®åºå 表å> 导åºçæ件å
æ¹æ¡äºï¼åå导å
¥
代ç å¦ä¸
å¤å¶ä»£ç
<?
//ç¨æ¥å¿«éMysqlç大æ°æ®å¤ä»½
//使ç¨å请é¦å
æç
§ä»£ç 注éä¿®æ¹è¦å¯¼å
¥çSQLæ件åãæ°æ®åºä¸»æºåãæ°æ®åºç¨æ·åãå¯ç ãæ°æ®åºå
//åæ¶å°æ°æ®åºæ件åæ¬ææ¬ä¸èµ·ftp导ç½ç«ç®å½ï¼ç¶å以webæ¹å¼è®¿é®æ¤æ件å³å¯
$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
"æ§è¡åºé
www.111cn.netï¼".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;
}
?>
æ¹æ¡ä¸ï¼å®¢æ·ç«¯ç¨sourceå½ä»¤æä½
ããæ¯è¾å¥½çåæ³ä»æ¯ç¨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æ°æ®åºï¼ç论ä¸ä¸è®ºæ¨çæ°æ®åºå¤ä»½æ件å¤å¤§ï¼é½å¯ä»¥å¯¼å
¥ãã
ããæ¹æ³å¦ä¸ï¼
ãã1.å°æ°æ®åºå¤ä»½æ件(å¦backup.sql)ä¸ä¼ è³ç½ç«æ ¹ç®å½ã
ãã2.å°ä»¥ä¸ä»£ç ä¿å为mysql.phpæ件ï¼ä¸ä¼ è³ç½ç«æ ¹ç®å½ã
代ç å¦ä¸
å¤å¶ä»£ç
ããsystem("mysql -hdbhost -udbuser -ppassword dbname < backup.sql");
ããprint "导å
¥æå";
ããå
¶ä¸
ããdbhost æ¹ä¸ºæ¨çæ°æ®åºæå¡å¨å°å(å°æ示:ä¸è¬ä¸»æºé»è®¤æ°æ®åºæå¡å¨å°åæ¯:localhost)
ããdbuser æ¹ä¸ºæ¨çæ°æ®åºç¨æ·å
ããpassword æ¹ä¸ºæ¨çæ°æ®åºç¨æ·å¯ç
ããdbname æ¹ä¸ºæ¨çæ°æ®åºå(导å
¥çæ¶åæ¤åºå¿
é¡»å
建ç«å¥½ï¼å¦åä¼å¤±è´¥å¹¶ä¸ä¸ä¼è¿è¡ä»»ä½æ示)
ããbackup.sql表示éè¿ftpä¸ä¼ å°ç½ç«æ ¹ç®å½ä¸æ°æ®åºæ件çæ件å(该æ件æ¯è§£å缩åçæ件)
ãã3.å¨æµè§å¨éé¢è®¿é®mysql.phpï¼ é£ä¹å°±å¨æµè§å¨éé¢è¾å
¥/mysql.phpï¼åªè¦æµè§å¨ä¸è®¿é®è¿ä¸ªmysql.phpæ件ï¼æ°æ®å°±å¼å§å¯¼å
¥ï¼æ°æ®å¯¼å
¥ç»æåï¼å°±ä¼æ¾ç¤ºâ导å
¥æåâçåæ ·ãè¿ä¸ªæ¶é´æ ¹æ®æ¨è¦å¯¼å
¥çæ°æ®å¤§å°å³å®ï¼ä¸è¬æ¶é´å¾ç