mysql sail MySQL使用小記

2021-10-17 18:06:07 字數 2717 閱讀 1708

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,那麼就...