2012-04-26 79 views
0

我正在使用DBVisualizer與我的共享主機數據庫。DBVisualizer不顯示SP源代碼

我無法看到實際的SP代碼,如果我從一個不同的IP地址登錄,而不是從我創建SP的登錄。

任何想法?我無法在CPanel中找到任何可能會改變此行爲的選項。

謝謝

回答

1

什麼是存儲過程的「DEFINER」?您的用戶帳戶可能沒有來自第二個IP地址的權限。如果您沒有「SUPER」權限,則不能爲您的當前用戶帳戶指定「DEFINER」的任何其他值,如果您從另一個IP地址登錄,則無法保證它使用的是同一帳戶。

因此,請嘗試向存儲過程授予更多權限。

此外,您可能希望看到MySQL的「SQL SECURITY INVOKER」選項。 http://dev.mysql.com/doc/refman/5.0/en/stored-programs-security.html

+0

你是對的,DEFINER值包含以前的IP地址。謝謝。 – user1359575 2012-04-26 20:33:27

+0

看來我還沒有更新DEFINER的權限。 – user1359575 2012-04-26 20:36:48

+0

您可以使用更多的通用用戶名(例如DEFINER ='user'@'%')刪除並重新創建存儲過程嗎? – darpified 2012-04-26 21:53:05