今日 User 要建立一個 MySQL 的View Table,但卻出現錯誤訊息
ERROR 1227: Access denied; you need (at least one of) the SUPER privilege(s) for this operation
使用者說,是不是沒有給他足夠的權限,所以無法執行。
環境說明:
1.MySQL 是用 Google Cloud Platform (GCP) 的 Cloud SQL (MySQL 第 2 代 5.7)
2.Cloud SQL 沒有區分帳號可以讀寫哪一個Schema
3.Client 工具用的是 MySQL Workbench 6.2 CE
4.使用者是用 MySQL Workbench 連接到 Cloud SQL 讀取現有 View , 工具就會產出 Create Statement
5.再執行工具產生的Create Statement,就會出錯
處理方式:
當然要加大權限也不是不可以,但更應該確認需求,而不是盲目的加大權限
根據
http://jenyu316.pixnet.net/blog/post/223690152-mysql%E5%9B%9E%E6%87%89----%3A-%231227---access-denied%3B-you-need-%28at-least-o
的說明,只要將以下三行拿掉就可以了。
ALGORITHM = UNDEFINED
DEFINER = `xxxx`@`xx.xx.xx.xx` << 最主要的原因
SQL SECURITY DEFINER
沒有留言:
張貼留言