原创 Error 1390: Prepared statement contains too many placeholders

當大量數據同時插入數據庫時,出現了以下報錯: Error 1390: Prepared statement contains too many placeholders 經過搜索,發現這個問題,是由於SQL語句中佔位符數量限制導

原创 orchestrator raft leader頻繁變化問題

最近在使用orchestrator的過程中,遭遇了嚴重的問題。 最初上線的幾個月裏,raft leader非常穩定。 但隨着時間的推移,raft leader 頻繁變化的問題就爆發了。 leader的變化,直接原因,就是leade

原创 MySQL 的連接時長控制--interactive_timeout和wait_timeout

在用MySQL客戶端對數據庫進行操作時,如果一段時間沒有操作,再次操作時,常常會報如下錯誤: ERROR 2013 (HY000): Lost connection to MySQL server during query ER

原创 mysql timestamp爲0值時,python讀取後的對象爲None

MySQL數據表中,如果timestamp類型的字段,值爲0, python從數據庫讀取數據後,得到對象是什麼類型,是否爲None呢? 下面來測試下。 創建數據表 首先創建數據表,其中字段pr_rule_update_time爲t

原创 查看MySQL 連接信息--連接空閒時間及正在執行的SQL

MySQL 客戶端與MySQL server建立連接後,就可以執行SQL語句了。 如何查看一個連接上是否正在執行SQL語句,或者連接是否處於空閒呢? 下面我們做下測試。 1.查看連接的空閒時間 首先看下測試程序。 代碼中,每3s執

原创 golang 故障模擬工具failpoint的使用

測試是功能上線之前的重要環節。 測試過程中,要儘量覆蓋各種場景。故障情況或異常情況下的場景測試,也是必不可少的。 如何模擬故障呢? 在FreeBSD 中, failpoints經常用來模擬故障。 在golang,也有failpo

原创 讀《大秦帝國》第三部

現在是2019年國慶假期,這兩天終於把《大秦帝國》第三部讀完了。 從2017年7月份就已經開始讀了,斷斷續續,中間停了很長時間,看其他書去了。今天總結一下書中的內容。 第三部,各國之間繼續攻伐。 秦國這邊開疆拓土,先後與楚國,與魏

原创 MySQL基礎普及《MySQL管理之道:性能調優、高可用與監控》

最近工作的內容涉及MySQL運維內容,陸陸續續讀了幾本相關的書,其中一本是《MySQL管理之道:性能調優、高可用與監控》。 內容涵蓋性能調優(包括sql優化等)、備份、高可用,以及讀寫分離等,對於普及MySQL基礎非常有用。記錄一

原创 golang中mysql建立連接超時時間timeout 測試

本文測試連接mysql的超時時間。 這裏的“連接”是建立連接的意思。 連接mysql的超時時間是通過參數timeout設置的。 1.建立連接超時測試 下面例子中,設置連接超時時間爲5s,讀超時時間6s。 MySQL server

原创 MySQL基本授權操作

本文介紹MySQL權限的基本操作。 授權 MySQL用戶包括user和host兩部分。 user與host是一起出現的,即權限指的是某個用戶在某個主機或某些主機上的權限。 首先,創建用戶: mysql> CREATE USER '

原创 centos環境下安裝docker

目前Docker支持centos 7及以後版本。 本文中使用的是centos7系統。 安裝所需的軟件包 $ sudo yum install update $ sudo yum install -y yum-utils devic

原创 MySQL 如何使用show processlist進行過濾

在使用show processlist的時候,直接使用會顯示很多的內容,無法很快找到需要的信息。 如何過濾操作呢? 其實,show processlist展示的內容是從information_schema.processlist數

原创 如何查看golang程序中有哪些goroutine 正在執行

查看 正在執行的goroutine分兩步: 1.程序中引入pprof pakage 在程序中引入pprof package: import _ "net/http/pprof" 程序中開啓HTTP監聽服務: package

原创 Error 1040 Too many connections

在使用MySQL的過程中,應用程序有時會碰到錯誤: Error 1040 Too many connections 這個錯誤表示,已經達到MySQL的最大連接數。 什麼是MySQL的最大連接數? 1.最大連接數的定義 max_c

原创 如何查看MySQL當前連接數

在MySQL中,連接建立後,會分配一個線程負責。一個連接,就是一個線程。 可以通過查看MySQL狀態參數,查看當前的連接數: mysql> show status like 'Threads%'; +---------------