最近發現之前做的一個項目運行之後總是出現“Error making query:MySQL server has gone away”的錯誤。其實項目很簡單,一個是socket伺服器端,一個是socket用戶端;用戶端發送請求給伺服器端,伺服器端收到請求從資料庫中查詢,再把結果發送給用戶端。之前做好之後測試只是簡單的發十幾條訊息,沒有問題。但是,如果連續發訊息(可間歇1秒),一段時間之後,伺服器端就會掛掉出現的錯誤:
背景知識1: 在主從庫維護中,有時候需要跳過某個無法執行的命令,需要在slave處於stop狀態下,執行 set global sql_slave_skip_counter=N以跳過命令。常用的且不易用錯的是N=1的情況,但N>1時,則不那麼顧名思義,本文詳細介紹N的意義,及使用注意事項。 背景知識2:
引用:http://zxlm.cityk.cn/fh/viewthread.php?tid=1395select *,if(sva=1,"男","女") as ssva from taname where sva<>"" 12.2. 控制流程程函數CASE value WHEN [compare-value] THEN result [WHEN [compare-value] THEN result ...] [ELSE result] END CASE WHEN
MySQL提供標準的SQL模式比對,以及一種基於象Unix公用程式如vi、grep和sed的擴充Regex模式比對的格式。SQL模式比對允許你使用“_”匹配任何單個字元,而“%”匹配任意數目字元(包括零字元)。在 MySQL中,SQL的模式預設是忽略大小寫。下面給出一些例子。注意使用SQL模式時,不能使用=或!=;而應使用LIKE或NOT LIKE比較操作符。要想找出以“b”開頭的名字:mysql> SELECT * FROM pet WHERE name LIKE 'b%';+-----
1.索引作用在索引列上,除了上面提到的有序尋找之外,資料庫利用各種各樣的快速定位技術,能夠大大提高查詢效率。特別是當資料量非常大,查詢涉及多個表時,使用索引往往能使查詢速度加快成千上萬倍。例如,有3個未索引的表t1、t2、t3,分別只包含列c1、c2、c3,每個表分別含有1000行資料群組成,指為1~1000的數值,尋找對應值相等行的查詢如下所示。SELECT c1,c2,c3 FROM t1,t2,t3 WHERE c1=c2 AND
在mysql中當我們把主鍵id設定為自增模式時,比如我們當前最大的主鍵id是8,那麼我們如何指定下一次插入的記錄的主鍵id為100呢,只要使用下面的sql語句即可: alter table user auto_increment=100 當我們把表中記錄刪除了一些時,我們可以把這個id的初始值設定的小一點,當這個值小於目前記錄的最大主鍵id,mysql會自動採用當前最大的主鍵id+1作為下一條記錄的主鍵id。
轉自 csdn —— http://topic.csdn.net/u/20070418/16/b7ad36d1-d011-45a4-b4e5-d796d65feedd.html mysql設定編碼方式 mysql能把英文欄位插如資料庫了 當我輸入中文時他就出現欄位Data truncation: Data too long for column 'name ' at row 1 我使用朋友的這個方法:(1)修改
MySql:www.mysql.org第一招、mysql服務的啟動和停止 net stop mysql net start mysql第二招、登陸mysql mysql -u使用者名稱 -p使用者密碼 mysql -uroot -p, 斷行符號後提示你輸入密碼,輸入12345,然後斷行符號即可進入到mysql中了,mysql的提示符是: mysql> 注意,如果是串連到另外的機器上,則需要加入一個參數-h機器IP第三招、增加新使用者 grant 許可權 on 資料庫.* to 使用者名稱@