国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

Mysql Error Code : 1436 Thread stack overrun

2024-07-24 12:44:23
字體:
來源:轉載
供稿:網友

ERRNO: 256 
TEXT: SQLSTATE[HY000]: General error: 1436 Thread stack overrun: 4904 bytes used of a 131072 byte stack, and 128000 bytes needed. Use 'mysqld -O thread_stack=#' to specify a bigger stack. 

According to the MySQL manual “The default (192KB) is large enough for normal operation. If the thread stack size is too small, it limits the complexity of the SQL statements that the server can handle, the recursion depth of stored procedures, and other memory-consuming actions” .

To resolve this issue you need to change the default value of parameter 'thread_stack' in /etc/my.cnf  in your MySQL configuration file. I use the XAMPP for php/mysql development. 

Once you set this value you need to restart MySQL as this value cannot be set dynamically.

you maybe also encounter with the message when you try to modify the my.cnf

"Cannot open file for writing: Permission denied"

We will try to use the 'chmod' instruction to change permission as usually. I seldom take the concrete permission into consideration, so I use always use the 'chmod 777'. but it resulted in another errors when I use the phpmyadmin, another tools included in XAMPP, after running 'chmod 777'.

After googling it, I get this file (my.cnf) permissions has to be 600. I change its permission and it works well now.

bug info

報錯信息:
java.sql.SQLException: Thread stack overrun: 5456 bytes used of a 131072 byte stack, and 128000 bytes needed. Use 'mysqld --thread_stack=#' to specify a bigger stack.

官方相應信息:

The default (192KB) is large enough for normal operation. If the thread stack size is too small, it limits the complexity of the SQL statements that the server can handle, the recursion depth of stored procedures, and other memory-consuming actions

可以使用

show variables where `variable_name` = 'thread_stack';

查詢當前數據庫的默認線程棧的大小,一般情況下都能正常使用,但是當查詢語句或者存儲過程復雜時會報Thread stack overrun錯誤,此時只要修改默認配置就可以。

解決

windows: 修改mysql安裝目錄下的my-small.ini或者my.ini設置為256k,或者更大,然后重啟服務

[mysqld]
thread_stack = 256k
linux: 同樣要修改配置文件,但是!!!,不是安裝目錄下的配置文件,是/etc/my.cnf,只有這個文件才能生效,然后重啟服務service mysql restart

[mysqld]
thread_stack = 256k

其實針對32位系統,32G內存,一般設置為512K即可,據國外網站看到的,如果是64位的系統可以適當增加,其實夠用就好了,沒必須剛開始設置的就很大。

您可能感興趣的文章:

解析mysql數據庫還原錯誤:(mysql Error Code: 1005 errno 121)MySQL多線程復制遇到Error_code: 1872的解決方案
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 周宁县| 萨迦县| 东乡族自治县| 喀喇| 金溪县| 区。| 嘉禾县| 恩平市| 榆林市| 太仓市| 陆川县| 来宾市| 小金县| 广平县| 石家庄市| 汨罗市| 金寨县| 乌鲁木齐县| 富宁县| 如东县| 恩施市| 特克斯县| 德令哈市| 金山区| 蓬溪县| 太原市| 临江市| 威远县| 湘乡市| 南川市| 射洪县| 岱山县| 平舆县| 诏安县| 白银市| 如皋市| 绩溪县| 克东县| 武胜县| 剑阁县| 湘潭市|