在Flask寫項目的過程中,Mysql提示了一個錯誤:
sqlalchemy.exc.OperationalError: (_mysql_exceptions.OperationalError) (1038, 'Out of sort memory, consider increasing server sort buffer size')
這個錯誤我通過百度搜索到的各種的解決方法都沒有效果,到最后我終於找到了解決的方法,我總結了以下三種方法:
1.更改數據庫,換低版本的數據庫連接。(失敗)
2.用my.ini(也就是my.cnf) 修改MySQL數據庫的字符集utf8mb4。修改完 並沒有生效。(失敗)
3.進入mysql命令行模式,修改sort_buffer_size大小 。(成功)
也就是說這個錯誤就是:內存不足,請考慮增加服務器排序緩沖區大小的問題。
方法如下:
1.打開cmd輸入 mysql -u root -p 然后輸入你的數據庫密碼 進入數據庫
mysql -u用戶名 -p密碼
2.查看你的'sort_buffer_size'就是內存空間還有多少
mysql> show variables like '%sort_buffer_size%';
3.根據自己的需求修改'sort_buffer_size'(內存)的大小
mysql> SET GLOBAL sort_buffer_size = 1024*1024*1024; #等號后面要改的 選擇自己需求的大小
解決成功
如果運行代碼還是出現sqlalchemy.exc.OperationalError: (_mysql_exceptions.OperationalError) (1038, 'Out of sort memory, consider increasing server sort buffer size'),
就再增大'sort_buffer_size'(內存)的大小。