對應的數據庫訪問權限。 因為在遷庫后,definer值沒有修改,原數據庫的用戶在新庫中不存在,所以報錯 ...
今天測試項目時,連接遠程Mysql數據庫項目正常運行,把遠程數據庫拷貝到本地數據庫,項目無法登陸,一直考慮是同步數據庫出了問題。確認幾遍后發現數據沒問題。最后發現是某條sql出現問題指定定義者的用戶不存在。而該sql中調用了視圖,最后才發現是視圖權限問題,運行sql報The user specified as a definer xxx does not exist。指定定義者的用戶不存在。而該s ...
2018-05-03 15:30 0 3122 推薦指數:
對應的數據庫訪問權限。 因為在遷庫后,definer值沒有修改,原數據庫的用戶在新庫中不存在,所以報錯 ...
我常用的工具是navicat,但是修改definer不能用工具,只能用命令行; 數據庫遷移到其他服務器上,會報definer錯誤,修改view的definer方法如下(比如把definer改為本地的,要加上select語句): 第一種方法: alter DEFINER = 'root ...
mysql中的definer是什么,有什么作用? 我們在mysql創建view、trigger、function、procedure、event時都會定義一個Definer=‘xxx’,類似如下: 加紅的部分SQL SECURITY 其實后面有兩個選項,一個 ...
背景 最近往現場導了個庫,發現功能報錯,一看是視圖報錯,navicat一看,哎呦,直接報錯。The user specified as a definer ('root'@'%') does not exist。 解決辦法 因為視圖的人在創建的時候 他選擇了定義者才能執行。於是當你切換 ...
最近導了個庫,發現功能報錯,一看是視圖報錯,navicat一看,哎呦,直接報錯。The user specified as a definer ('root'@'%') does not exist。 解決辦法 因為視圖的人在創建的時候 解決辦法1 如果你只有當前用戶 ...
前言: 在 MySQL 數據庫中,在創建視圖及函數的時候,你有注意過 definer 選項嗎?在遷移視圖或函數后是否有過報錯情況,這些其實都可能和 definer 有關系。本篇文章主要介紹下 MySQL 中 definer 的含義及作用。 1.DEFINER簡單介紹 以視圖為例,我們來看下 ...
-- 函數、存儲過程 select definer from mysql.proc; update mysql.proc set definer='billing@%'; -- 定時事件 select DEFINER from mysql ...
-- 函數、存儲過程 select definer from mysql.proc; update mysql.proc set definer='billing@%'; -- 定時事件 select DEFINER ...