2017年4月21日 星期五

[MySQL]MySQL 5.7 inet_aton參數不允許空字串

  話說把一個資料蒐集的DB從Percona 5.6升級到5.7,結果用LOAD DATA INFILE的入庫腳本幾乎全部失敗,顯示如下的錯誤
Incorrect string value: '''' for function inet_aton

  因為來源資料有ip,所以用inet_aton轉換成整數存入,都運作好幾個月的腳本怎麼會升級後出錯呢?而且它都是顯示第一行出錯,我怎麼看第一行都是對的@@

  後來嘗試了一下inet_aton在5.6與5.7的差異
  各位猜猜看,下面哪個會出錯?
select inet_aton(null);
select inet_aton(0);
select inet_aton('');


2017年4月20日 星期四

[CentOS]升級MySQL後,mail命令竟然出錯了

  升級mysql後,mail就寄不出去了?
send-mail: error while loading shared libraries: libmysqlclient.so.16: cannot open shared object file:
No such file or directory

2017年4月16日 星期日

[Docker]測試SQL Server Agent on Linux

  因為SQL Server vNext(CTP1.4)的docker image並沒有包含SQL Server Agent,要使用它需要手動安裝,步驟可以參考Install SQL Server on Ubuntu,因為安裝過程遇到一些錯誤,我把遭遇到的問題跟解法列出來,供大家參考

  首先啟動mssql-server-linux的container然後進入bash,查看一下process
docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=<Passw0rd>' -p 1433:1433 -d microsoft/mssql-server-linux
docker exec -it c1f bash
ps aux

2017年4月13日 星期四

[Docker]測試Microsoft SQL Server vNext

  以往DBA在Mac上要測試SQL Server都要用VirtualBox或是Paralles之類的虛擬機器,現在多了Docker這個選擇,那如果是Developer的話,更要用Docker,因為真的是秒裝,非常快速,本篇來介紹一下如何來測試Microsoft SQL Server vNext (CTP1.4),關於image的說明可參考microsoft/mssql-server-linux

  第一次使用可以先docker pull下載它,需要花上一段時間喔,因為image有1G多
docker pull microsoft/mssql-server-linux

  啟動就很簡單了
docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=<Passw0rd>' -p 1433:1433 -d microsoft/mssql-server-linux
  其中環境變數ACCEPT_EULA與SA_PASSWORD是必要的