一、正式環境操作注意事項: 1、關閉應用訪問或者設置數據庫只讀 mysql設為只讀方法: 開啟只讀: mysql> show global variables like "%read_only%"; #查看相關參數,OFF為關,ON為開,默認為OFF mysql> flush tables with read lock; mysql> set global read_only=1; 關閉只讀: mysql> unlock tables; mysql> set global read_only=0; mysql> show global variables like "%read_only%"; 2、操作前備份數據庫 3、開始及結束檢查外鍵引用參數 4、操作時間為晚間 二、批量修改字段類型流程 #未防止字段進行了外鍵關聯,批量操作前臨時關閉mysql外鍵引用,mysql內執行 mysql> SET foreign_key_checks = 0; #獲得修改語句並存儲到臨時表 mysql> USE db; mysql> CREATE TEMPORARY TABLE XIUGAI SELECT CONCAT( 'alter table ',table_name,' MODIFY COLUMN ',column_name, ' datetime(3) ;' ) AS col FROM INFORMATION_SCHEMA.columns a WHERE TABLE_SCHEMA = 'ofbiz' AND data_type IN ('datetime') ; #查看獲得的語句 mysql> SELECT * FROM XIUGAI; #mysql外執行,導出表內容,-N不帶列名 -e執行語句 mysql -uroot -p -N -e "select * from XIUGAI" db>/home/abc/XIUGAI.SQL #mysql外執行,通過腳本批量執行alter語句 mysql -uroot -p db </home/abc/XIUGAI.SQL #恢復外鍵引用關系,mysql內執行 mysql> SET foreign_key_checks = 1; #核對外鍵引用是否開啟,mysql內執行,1代表開啟,0代表關閉 mysql> SELECT @@FOREIGN_KEY_CHECKS;