本文目錄一覽:
- 1、mysql數據庫導入錯誤
- 2、mysql 導入數據庫時報錯?
- 3、MYSQL數據庫導入失敗怎麼辦
- 4、Mysql數據庫插入數據庫報錯, ERROR 1366 (HY000): Incorrect string value: ‘\xBE\xEA’ for column ‘name
mysql數據庫導入錯誤
如果從庫上表 t 數據與主庫不一致,導致複製錯誤,整個庫的數據量很大,重做從庫很慢,如何單獨恢復這張表的數據?通常認為是不能修復單表數據的,因為涉及到各表狀態不一致的問題。下面就列舉備份單表恢復到從庫會面臨的問題以及解決辦法:
場景 1
如果複製報錯後,沒有使用跳過錯誤、複製過濾等方法修復主從複製。主庫數據一直在更新,從庫數據停滯在報錯狀態(假設 GTID 為 aaaa:1-100)。
修復步驟:
在主庫上備份表 t (假設備份快照 GTID 為 aaaa:1-10000);
恢復到從庫;
啟動複製。
這裡的問題是複製起始位點是 aaaa:101,從庫上表 t 的數據狀態是領先其他表的。aaaa:101-10000 這些事務中只要有修改表 t 數據的事務,就會導致複製報錯 ,比如主鍵衝突、記錄不存在(而 aaaa:101 這個之前複製報錯的事務必定是修改表 t 的事務)
解決辦法:啟動複製時跳過 aaaa:101-10000 這些事務中修改表 t 的事務。
正確的修復步驟:
1. 在主庫上備份表 t (假設備份快照 GTID 為 aaaa:1-10000),恢復到從庫;
2. 設置複製過濾,過濾表 t:
CHANGE REPLICATION FILTER REPLICATE_WILD_IGNORE_TABLE = (‘db_name.t’);
3. 啟動複製,回放到 aaaa:10000 時停止複製(此時從庫上所有表的數據都在同一狀態,是一致的);
START SLAVE UNTIL SQL_AFTER_GTIDS = ‘aaaa:10000’;
4. 刪除複製過濾,正常啟動複製。
注意事項:這裡要用 mysqldump –single-transaction –master-data=2,記錄備份快照對應的 GTID
場景 2
如果複製報錯後,使用跳過錯誤、複製過濾等辦法修復了主從複製。主、從庫數據一直在更新。
修復步驟:
在主庫上備份表 t (假設備份快照 GTID為 aaaa:1-10000);
停止從庫複製,GTID為 aaaa:1-20000;
恢復表 t 到從庫;
啟動複製。
這裡的問題是複製起始位點是 aaaa:20001,aaaa:10000-20000 這些事務將不會在從庫上回放,如果這裡面有修改表 t 數據的事務,從庫上將丟失這部分數據。
解決辦法:從備份開始到啟動複製,鎖定表 t,保證 aaaa:10000-20000 中沒有修改表 t 的事務。
正確修復步驟:
對錶 t 加讀鎖;
在主庫上備份表 t;
停止從庫複製,恢復表 t;
啟動複製;
解鎖表 t。
如果是大表,這裡可以用可傳輸表空間方式備份、恢復表,減少鎖表時間。
mysql 導入數據庫時報錯?
1064錯誤你就不用多想了,這個肯定是你寫的SQL語句語法出錯了,建議你在平時的學習中自己找出錯誤,才會成長,我在這裡幫你找下錯誤吧。
int類型一般不設置長度的,如果你偏要設置的話,要配合zerofill使用才有意義。幫你修改了一下:
CREATE TABLE `ecm_acategory`(
`cate_id` int unsigned NOT NULL AUTO_INCREMENT,
`cate_name` varchar(100) NOT NULL default ”,
`parent_id` int unsigned NOT NULL default ‘0’,
`sort_order` tinyint unsigned NOT NULL default ‘255’,
`code` varchar(10) default NULL,
PRIMARY KEY(`cate_id`)
)ENGINE=MYISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;
你試試看哈,希望幫助到你
MYSQL數據庫導入失敗怎麼辦
MySQL數據庫的導入,有兩種方法:
1)
先導出數據庫SQL腳本,再導入;
2)
直接拷貝數據庫目錄和文件。
在不同操作系統或MySQL版本情況下,直接拷貝文件的方法可能會有不兼容的情況發生。
所以一般推薦用SQL腳本形式導入。
Mysql數據庫插入數據庫報錯, ERROR 1366 (HY000): Incorrect string value: ‘\xBE\xEA’ for column ‘name
“ERROR 1366 (HY000): Incorrect string value: ‘\xBE\xEA’ for column ‘name”,此問題的原因:配置文件錯誤。
解決的方法和操作步驟如下:
1、首先,右鍵單擊開始圖標,然後在菜單上選擇“運行”選項,如下圖所示,然後進入下一步。
2、其次,完成上述步驟後,在輸入框中輸入“cmd”命令,然後單擊“確定”按鈕,如下圖所示,然後進入下一步。
3、接着,完成上述步驟後,輸入“mysql -uroot -p+密碼”,如下圖所示,然後進入下一步。
4、然後,完成上述步驟後,連接成功,輸入如下紅框中的內容,然後進入下一步。
5、隨後,完成上述步驟後,查找配置文件所在的地址,如下圖所示,然後進入下一步。
6、最後,完成上述步驟後,打開mysql.ini文件,將默認字符集修改為“utf8”,因為MYSQL版本不同,配置文件中的內容也不相同,只需要修改字符集設置並將其修改為utf8即可,如下圖所示。這樣,問題就解決了。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/293353.html