1.mysql server has gone away
問題出現場景:匯入50m的資料庫sql檔案
問題分析:
情況1:sql語句太長,超過了max_allowed_packet的大小;
解決方案: my.ini中修改
wait_timeout=2880000interactive_timeout= 2880000max_allowed_packet =10m(也可以設定自己需要的大小)
max_allowed_packet 引數的作用是,用來控制其通訊緩衝區的最大長度。
2、max_connections
set global max_connections=2000;
3、mysql時間統計函式(30分鐘一統計)
create function `date_half_hour_format`(in_date timestamp) returns timestamp
begin
declare out_date timestamp;
declare s_date varchar(255);
declare s_minute varchar(2);
declare int_minute int;
set s_minute = substring(in_date, 15, 2);
set int_minute = cast(s_minute as signed);
if int_minute <= 29 then
set int_minute = 0;
set s_date = concat(left(in_date, 14),'0',int_minute);
else
set int_minute = 30;
set s_date = concat(left(in_date, 14),int_minute);
end if;
set out_date = str_to_date(s_date,'%y-%m-%d %h:%i');
return out_date;
end延伸實現:10分鐘一統計
drop functiondate_half_hour_format;create function `date_half_hour_format`(in_date timestamp) returns timestamp
begin
declare out_date timestamp;declare s_date varchar(255);declare s_minute varchar(2);declare int_minute int;set s_minute = substring(in_date, 15, 2);set int_minute = cast(s_minute assigned);if int_minute <= 9 then
set int_minute = 0;set s_date = concat(left(in_date, 14),'0',int_minute);
elseif int_minute> 9 and int_minute<=19 then
set int_minute = 10;set s_date = concat(left(in_date, 14),int_minute);
elseif int_minute> 19 and int_minute<=29 then
set int_minute = 20;set s_date = concat(left(in_date, 14),int_minute);
elseif int_minute> 29 and int_minute<=39 then
set int_minute = 30;set s_date = concat(left(in_date, 14),int_minute);
elseif int_minute> 39 and int_minute<=49 then
set int_minute = 40;set s_date = concat(left(in_date, 14),int_minute);else
set int_minute = 50;set s_date = concat(left(in_date, 14),int_minute);end if;set out_date = str_to_date(s_date,'%y-%m-%d %h:%i');returnout_date;end
注意:1、my.ini檔案編碼應為」ansi「,否則cmd->」mysqld --initialize --console「時會報錯:found option without preceding group in config file
2、mysqld --initialize-insecure --console建立基於密碼空白的管理員賬戶的初始化data目錄資料,需要通過--secure-file-priv指定具有檔案操作許可權的目錄,否則會導致無法生成初始化資料,報--secure-file-priv is set to null. operations related to importing and exporting data are disabled.
secure_file_priv 引數是唯讀引數,不能使用set global命令修改,需直接修改my.ini檔案在[mysqld]內加入secure_file_priv =,修改後重啟mysql服務,使用「showglobal variableslike '%secure_file_priv%';」命令檢視修改結果。
7、mysql對json資料的使用
VMware License Server使用經驗
近期在測試vmware server,在使用vmware license server的時候碰到一些問題,經過兩天的實驗,問題得以解決,現記錄如下,以供朋友們參考。1 複製license檔案 在安裝vmware virtualcenter的時候,會一同安裝license server伺服器。如果你在...
Django Rest framework使用例項
一 修改配置檔案 setting.py django.contrib.admin django.contrib.auth django.contrib.contenttypes django.contrib.sessions django.contrib.messages django.contri...
Android AlarmManager 使用指南
intent intent new intent intent.setaction updatemgr.check update action 如果你的flag 是flag one shot,那麼你就只能受到一次廣播。如果使用setrepeat,你設定的intervalmills 少於60s,那麼就...