啟用phpMyAdmin兩階段驗證後卻找不到Google Authenticator的驗證碼

日前因為測試phpMyAdmin的兩階段驗證功能,有使用Google Authenticator作為兩階段驗證的機制,但因故刪了Google Authenticator的驗證碼,卻沒有取消phpMyAdmin的兩階段驗證,結果就沒辦法再透過phpMyAdmin登入mysql。後來找到方法可以解決這個問題。

閱讀全文〈啟用phpMyAdmin兩階段驗證後卻找不到Google Authenticator的驗證碼〉

mysql使用者帳號同時有localhost和%遇到的問題及處理方式

印象中,同帳號不同host可以並存,例如[email protected][email protected]%,一直以來開發環境似乎都是這樣。

但今天遇到phpmyadmin的使用者帳號列表提示訊息:因為同帳號有host為locahost的,會導致host為%的帳號無法登入。所以索性刪了[email protected]的使用者,結果還是無法登入,後來推想應該是另一組帳號空白的localhost造成的。

但此時因為已經刪除[email protected],結果沒辦法再新增刪除使用者。這時可以找到my.ini或my.cnf裡的mysqld段落加上skip_grant_tables,例如:

閱讀全文〈mysql使用者帳號同時有localhost和%遇到的問題及處理方式〉

MySQL 5.7的data資料夾檔案無法直接覆蓋使用

在以前的版本,記得data裡的資料夾,也就是資料庫的實體檔案是可以直接覆蓋使用的。

就算可能因此少了某些資料表,尤其是InnoDb格式的資料表可能因此無法正常顯示,

但伺服器運作的至少還算正常。 閱讀全文〈MySQL 5.7的data資料夾檔案無法直接覆蓋使用〉

查詢條件為null時跑不出東西

select * from SOME_TABLE where colA <> ‘3’

上述條件會篩選出colA欄位不等於3的所有記錄。再比對下列語法:

select * from SOME_TABLE where colA <> null

此語法跑不出任何記錄,即使的確存在其他colA欄位非null的記錄。 閱讀全文〈查詢條件為null時跑不出東西〉