2016-02-12 86 views
1

我需要在數據庫更改時發送HTTP請求,所以我使用mysqludf擴展名。是否可以在Amazon RDS上使用MySQL UDF?

它在本地工作,但我怎樣才能讓它在Amazon RDS上工作呢?如果這是不可能的,我需要一個解決方案來使用MySQL觸發器以及sys_exec函數或類似的東西。

有人可以幫助我嗎?

謝謝!

+0

可能不是。 RDS被鎖定,因此您不能分解託管組件。 – ceejayoz

回答

5

絕對不是。 RDS實例以兩種方式鎖定,以防止您安裝UDF;不要與存儲函數混淆,UDF用C語言編寫並編譯。然後必須將二進制共享目標文件複製到MySQL服務器的文件系統中,RDS(這是一個)無法訪問該文件系統,並且必須具有SUPER特權才能從文件實際加載UDF插件,RDS不提供(這是兩個)。

此外,您不能在RDS上使用sys_exec()sys_eval(),因爲這些功能不是內置的。他們也是UDF插件。

這是與RDS(或任何「託管」數據庫服務器服務,我懷疑)的權衡之一。爲了簡化和點&單擊配置,您放棄了一些事情。

在RDS中沒​​有辦法做到你想要的。

+0

好的謝謝你的答案,所以我必須找到一個解決方法來做到這一點。 – Kukka

+0

對,但要清楚,我們沒有可用的解決方法,它涉及在RDS機器本身中運行自定義代碼。 –

+0

我也想知道這是否可行,但RDS不支持需要編譯對象文件上傳的UDF。你將不得不創建一個EC2實例並安裝MySQL,這樣你就可以完全控制並可以將編譯的C代碼上傳到你的MySQL。 – kimbaudi

相關問題