Posts

Showing posts from February, 2023

Google Cloud SQL 升級到 MySQL 8 遇到的權限問題

Image
 Google Cloud SQL 提供資料庫升級的方式很方便 幾乎是一鍵完成升級 這邊是從 5.7 升級到 8.0 在備份前先手動備份以外 另外還建立了一個副本 以確保在升級後有問題可迅速切回舊的資料庫 升級後發現有幾個資料庫使用者的權限有問題 在 phpMyAdmin 上面重新設定後也是一樣 phpMyAdmin 5.2.0 & 5.2.1 上設定 MySQL 8 的權限有點問題 由於 MySQL 8 上做了個修改 如果需要給予該使用者該資料庫 GRANT 的權限 需要在 GRANT 後面加上 WITH GRANT OPTION 指令 否則該使用者會無法存取該資料庫 基本上我是無法直接在 phpMyAdmin 上用點選的方式完成設定 正常權限的畫面 如果用 phpMyAdmin 勾選上方 Check all Administration 下的 GRANT 不會被勾選 即使手動勾選 GRANT 儲存後也是空的 可以使用以下指令修改完貼到 phpMyAdmin 上執行 CREATE USER ' db_user '@ '%' IDENTIFIED WITH mysql_native_password BY 'password' ; GRANT ALL PRIVILEGES ON your_database.* TO 'db_user' @ '%' WITH GRANT OPTION ; FLUSH PRIVILEGES; 測試環境 - Google Cloud SQL MySQL 8.0.26(測試過 MySQL 8.0.31 也是如此) - phpMyAdmin 5.2.0 & 5.2.1