日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql8.0创建属性,MySQL 8.0新特性 — 管理端口的使用简介

發布時間:2025/4/5 数据库 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql8.0创建属性,MySQL 8.0新特性 — 管理端口的使用简介 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

下面這個報錯,相信大多數童鞋都遇見過;那么碰到這個問題,我們應該怎么辦呢?在MySQL 5.7及之前版本,出現“too many connection”報錯,超級用戶root也無法登錄上去,除了重啟實例,沒有其他更好的解決辦法;不過在MySQL 8.0版本中,是對連接管理做了一些優化,下面我們就來看一下。

ERROR 1040 (HY000): Too many connections

連接管理

在MySQL 8.0版本中,對連接管理這一塊,是先后做了兩個比較大的改變:一個是允許額外連接,另一個是專用的管理端口。

額外連接

在MySQL 8.0版本中,在當前連接數達到最大連接數時,服務端允許1個額外連接,可以讓具有CONNECTION_ADMIN權限的用戶連接進來,下面簡單測試一下。

(1)為了方便測試,先調整最大連接數

mysql> set global max_connections=3;

Query OK, 0 rows affected (0.00 sec)

(2)多開幾個會話,以達到最大連接數

mysql> show processlist;

+----+-----------------+-----------------+------+---------+--------+------------------------+------------------+

| Id | User | Host | db | Command | Time | State | Info |

+----+-----------------+-----------------+------+---------+--------+------------------------+------------------+

| 15 | event_scheduler | localhost | NULL | Daemon | 154190 | Waiting on empty queue | NULL |

| 54 | root | localhost | NULL | Query | 0 | starting | show processlist |

| 55 | test | 127.0.0.1:59120 | NULL | Sleep | 19 | | NULL |

| 56 | test | 127.0.0.1:59136 | NULL | Sleep | 9 | | NULL |

+----+-----------------+-----------------+------+---------+--------+------------------------+------------------+

4 rows in set (0.00 sec)

mysql> show global status like 'threads_connected';

+-------------------+-------+

| Variable_name | Value |

+-------------------+-------+

| Threads_connected | 3 |

+-------------------+-------+

4 rows in set (0.01 sec)

(3)普通用戶test嘗試連接,報錯too many connections

$ mysql -utest -p -h127.0.0.1 -P10080

Enter password:

ERROR 1040 (08004): Too many connections

(4)超級用戶root嘗試連接成功

$ mysql -uroot -p

Enter password:

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 60

Server version: 8.0.20 MySQL Community Server - GPL

Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

(5)再次查看當前連接數,為max_connections+1

+----+-----------------+-----------------+------+---------+--------+------------------------+------------------+

| Id | User | Host | db | Command | Time | State | Info |

+----+-----------------+-----------------+------+---------+--------+------------------------+------------------+

| 15 | event_scheduler | localhost | NULL | Daemon | 155064 | Waiting on empty queue | NULL |

| 54 | root | localhost | NULL | Query | 0 | starting | show processlist |

| 55 | test | 127.0.0.1:59120 | NULL | Sleep | 893 | | NULL |

| 56 | test | 127.0.0.1:59136 | NULL | Sleep | 883 | | NULL |

| 60 | root | localhost | NULL | Sleep | 141 | | NULL |

+----+-----------------+-----------------+------+---------+--------+------------------------+------------------+

5 rows in set (0.00 sec)

mysql> show global status like 'threads_connected';

+-------------------+-------+

| Variable_name | Value |

+-------------------+-------+

| Threads_connected | 4 |

+-------------------+-------+

4 rows in set (0.00 sec)

(6)超級用戶root再次嘗試連接,也報錯too many connections

$ mysql -uroot -p

Enter password:

ERROR 1040 (HY000): Too many connections

通過上面測試可知,在MySQL 8.0中,允許的連接數為max_connections+1,其中這1個額外連接,只允許具有CONNECTION_ADMIN權限的用戶使用。通過這1個額外連接,DBA可以使用超級用戶root連接,進行kill會話等管理操作,以避免直接重啟實例,降低成本,提高效率。

管理端口

額外連接,在一定程度上,提供了出現too many connection問題時的臨時解決手段,但額外數量只有1個,難免會有一些意外,出現類似"連接被搶用"、“終端異常掉線”等情況。因此,在MySQL 8.0.14版本中,又推出了一個非常重要的新特性——管理端口;它允許具有SERVICE_CONNECTION_ADMIN權限的用戶,通過特定的IP和PORT連接上來,且沒有連接數限制。

(1)先介紹下相關參數

admin_address:監聽IP地址

admin_port:監聽端口

create_admin_listener_thread:是否創建一個單獨的線程來監聽管理連接

(2)通過配置上述參數,即可啟用管理端口

mysql> show global variables like 'admin%';

+---------------+-----------+

| Variable_name | Value |

+---------------+-----------+

| admin_address | 127.0.0.1 |

| admin_port | 33062 |

+---------------+-----------+

2 rows in set (0.00 sec)

# netstat -lntp | grep 33062

tcp 0 0 127.0.0.1:33062 0.0.0.0:* LISTEN 20042/mysqld

(3)接下來進行測試

mysql> show processlist;

+----+-----------------+-----------------+------+---------+--------+------------------------+------------------+

| Id | User | Host | db | Command | Time | State | Info |

+----+-----------------+-----------------+------+---------+--------+------------------------+------------------+

| 15 | event_scheduler | localhost | NULL | Daemon | 168750 | Waiting on empty queue | NULL |

| 54 | root | localhost | NULL | Query | 0 | starting | show processlist |

| 55 | test | 127.0.0.1:59120 | NULL | Sleep | 14579 | | NULL |

| 56 | test | 127.0.0.1:59136 | NULL | Sleep | 14569 | | NULL |

+----+-----------------+-----------------+------+---------+--------+------------------------+------------------+

4 rows in set (0.00 sec)

mysql> show global status like 'threads_connected';

+-------------------+-------+

| Variable_name | Value |

+-------------------+-------+

| Threads_connected | 3 |

+-------------------+-------+

1 row in set (0.00 sec)

(4)普通用戶test嘗試連接,報錯too many connections

$ mysql -utest -p -h127.0.0.1 -P10080

Enter password:

ERROR 1040 (08004): Too many connections

(5)超級用戶root嘗試通過管理端口連接成功

$ mysql -uroot -p -h127.0.0.1 -P33062

Enter password:

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 62

Server version: 8.0.20 MySQL Community Server - GPL

Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

(6)繼續多開幾個會話,使用超級用戶root,通過管理端口連接成功,不受最大連接數max_connections限制

mysql> show processlist;

+----+-----------------+-----------------+------+---------+--------+------------------------+------------------+

| Id | User | Host | db | Command | Time | State | Info |

+----+-----------------+-----------------+------+---------+--------+------------------------+------------------+

| 15 | event_scheduler | localhost | NULL | Daemon | 169035 | Waiting on empty queue | NULL |

| 54 | root | localhost | NULL | Query | 0 | starting | show processlist |

| 55 | test | 127.0.0.1:59120 | NULL | Sleep | 14864 | | NULL |

| 56 | test | 127.0.0.1:59136 | NULL | Sleep | 14854 | | NULL |

| 62 | root | 127.0.0.1:47660 | NULL | Sleep | 151 | | NULL |

| 63 | root | 127.0.0.1:47760 | NULL | Sleep | 52 | | NULL |

| 64 | root | 127.0.0.1:47768 | NULL | Sleep | 43 | | NULL |

| 65 | root | 127.0.0.1:47780 | NULL | Sleep | 35 | | NULL |

| 66 | root | 127.0.0.1:47790 | NULL | Sleep | 24 | | NULL |

| 67 | root | 127.0.0.1:47800 | NULL | Sleep | 16 | | NULL |

| 68 | root | 127.0.0.1:47808 | NULL | Sleep | 8 | | NULL |

+----+-----------------+-----------------+------+---------+--------+------------------------+------------------+

11 rows in set (0.00 sec)

mysql> show global status like 'threads_connected';

+-------------------+-------+

| Variable_name | Value |

+-------------------+-------+

| Threads_connected | 10 |

+-------------------+-------+

1 row in set (0.00 sec)

可以說,有了管理端口這個新功能,DBA再也不用擔心too many connections的問題。

總結

在MySQL 8.0版本中,為了應對too many connections的場景,先后推出了額外連接和管理端口兩個新功能,可以讓DBA方便、快速地解決問題;不過,這始終是一個臨時應急手段,最根本的原因還是要排查應用端的配置(并發限流、SQL性能、連接池配置等等),以徹底規避此類問題。

以上就是MySQL 8.0新特性 — 管理端口的使用簡介的詳細內容,更多關于MySQL 8.0新特性 — 管理端口的資料請關注我們其它相關文章!

時間: 2021-03-17

總結

以上是生活随笔為你收集整理的mysql8.0创建属性,MySQL 8.0新特性 — 管理端口的使用简介的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产精品主播在线 | 黄色小视频在线免费观看 | 日韩成人免费在线 | 久久久久亚洲av无码专区喷水 | 国产91精品看黄网站在线观看 | 一级做a在线观看 | 制服诱惑一区二区 | 人与动物2免费观看完整版电影高清 | 亚洲一区免费视频 | 国产成人精品自拍 | 无码免费一区二区三区免费播放 | 青青青国产视频 | 91av国产视频 | 麻豆视频免费观看 | 午夜视频福利在线观看 | ass极品国模人体欣赏 | 涩涩成人网| 天天都色 | 香蕉久久一区二区三区 | 超碰在线个人 | 国产成人av一区二区三区在线观看 | 手机av在线看 | 国产成人精品无码免费看在线 | 91麻豆精品国产91久久久无需广告 | 国产日日夜夜 | 久久久久久久免费 | 天堂网视频 | 亚洲精品字幕在线 | 色爽| 亚洲一二三视频 | 亚洲一级在线播放 | 日本黄色片在线播放 | 丰满熟妇肥白一区二区在线 | 91另类| 天天爽av | www一起操| 青青草偷拍视频 | 亚洲h| 中文字幕第18页 | 亚洲v在线| 亚洲国产成人无码av在线 | 亚洲色图丝袜美腿 | 女人高潮潮呻吟喷水 | 国产情侣自拍av | 在线观看免费福利 | 久久99久| 亚洲免费影视 | 国产xxxx做受视频 | 精品久久久久久久久久岛国gif | 日韩福利视频一区 | 四虎网站在线播放 | 国产精品入口66mio男同 | 午夜寂寞视频 | 97在线精品视频 | 欧美一级爽aaaaa大片 | 一本色道久久88综合日韩精品 | 精品无码人妻一区二区三区 | 在线播放亚洲精品 | 国产尤物视频在线观看 | 亚洲av无码成人精品国产 | 好吊妞在线 | 欧美性精品 | 男人和女人做爽爽视频 | 日韩精品一区二区三区视频 | 日韩一区二区三区三四区视频在线观看 | 浓精h攵女乱爱av | 极品尤物魔鬼身材啪啪仙踪林 | 日韩精品视频免费在线观看 | 亚洲砖区免费 | 国产高中女学生第一次 | 人人做人人爽人人爱 | 性少妇mdms丰满hdfilm | 国产精品久久久久久久免费观看 | 九九热在线精品视频 | 欧美性tv | 中文字幕人妻丝袜乱一区三区 | 青青草偷拍视频 | 国产精品成人免费 | 国产三级在线看 | 播五月婷婷 | 国产成人综合一区二区三区 | 亚洲性xxxx| 白丝美女被草 | 日韩中文字幕在线观看 | 朱竹清到爽高潮痉挛 | 男女做爰猛烈吃奶啪啪喷水网站 | 少妇户外露出[11p] | 久久精品免费电影 | 日韩片在线观看 | 日韩免费二区 | 国产情侣av在线 | www插插插 | 真实人妻互换毛片视频 | 女生的胸无遮挡 | 情侣自拍av | 撸啊撸在线视频 | 毛片视频免费观看 | 波多野结衣一区二区 | 日本一区二区久久 |