現象:在數據庫遷移之后,調用函數報錯,提示definer不存在。
查了一下,發現函數和存儲過程之類的,本身調用是不存在權限這個概念的。
definer這個值並不會限制函數和存儲過程被調用的權限,但會限制函數和存儲過程訪問數據庫的權限。
函數和存儲過程在訪問數據庫時,會獲取definer用戶對應的數據庫訪問權限。
因為在遷庫后,definer值沒有修改,原數據庫的用戶在新庫中不存在,所以報錯,修改一下definer值就可以了
現象:在數據庫遷移之后,調用函數報錯,提示definer不存在。
查了一下,發現函數和存儲過程之類的,本身調用是不存在權限這個概念的。
definer這個值並不會限制函數和存儲過程被調用的權限,但會限制函數和存儲過程訪問數據庫的權限。
函數和存儲過程在訪問數據庫時,會獲取definer用戶對應的數據庫訪問權限。
因為在遷庫后,definer值沒有修改,原數據庫的用戶在新庫中不存在,所以報錯,修改一下definer值就可以了
本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。