mysql 1308_Mysql恢复数据报ERROR 1308 : LEAVE with no matching label_MySQL
趕緊看備份日志,日志如下:
----------------------------------
===BEG:20151108 01:00:01=====
===FTP:20151108 01:00:05=====
===CLS:20151108 01:00:07=====
===OPT:20151108 01:00:08=====
===END:20151108 01:00:08=====
----------------------------------
日志并沒有什么異常,既然說有問題,那就恢復(fù)一下吧
為了加快恢復(fù)的速度,先設(shè)置參數(shù):
mysql>
SET sql_log_bin = 0
SET autocommit=0;
SET net_buffer_length=10485760;
SET innodb_flush_log_at_trx_commit=0;
SET sync_binlog=0
mysql> source 備份文件
發(fā)現(xiàn)果然報(bào)錯(cuò)了:
ERROR 1308 (42000) at line 2428811: LEAVE with no matching label: loo
查看備份文件的242881行,發(fā)現(xiàn)這一行是創(chuàng)建存儲(chǔ)過程的語句,而且這個(gè)存儲(chǔ)過程沒有備份完整,這就是恢復(fù)出錯(cuò)的原因
為什么備份的時(shí)候存儲(chǔ)過程沒有備份完整呢?這個(gè)問題再研究,先解決問題吧,把備份數(shù)據(jù)和備份存儲(chǔ)過程分開
/usr/local/mysql/bin/mysqldump -uroot -pxxxx --default-character-set=utf8 -n -d -t -R --databases xxxx >R.sql
參數(shù)說明如下:
-n: --no-create-db
-d: --no-data
-t: --no-create-info
-R: --routines Dump stored routines (functions and procedures)
恢復(fù)備份的存儲(chǔ)過程和函數(shù)
mysql < R.sql
補(bǔ)充:為了查找為什么mysqldump備份的時(shí)候存儲(chǔ)過程會(huì)沒有備份完整,我查看了其他幾天的備份文件,存儲(chǔ)過程都是備份完整的,只有一種解釋,我同事給我的那份備份文件被損壞了。。。
相關(guān)標(biāo)簽:數(shù)據(jù)
本文原創(chuàng)發(fā)布php中文網(wǎng),轉(zhuǎn)載請(qǐng)注明出處,感謝您的尊重!
總結(jié)
以上是生活随笔為你收集整理的mysql 1308_Mysql恢复数据报ERROR 1308 : LEAVE with no matching label_MySQL的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: linux安装mysql启动失败的原因_
 - 下一篇: windows10安装mysql 8.0