我在Ubuntu 14.04中安装了CryptDB。我要启动代理:

$ /home/user/cryptdb/bins/proxy-bin/bin/mysql-proxy \
    --plugins=proxy \
    --event-threads=4 \
    --max-open-files=1024 \
    --proxy-lua-script=$EDBDIR/mysqlproxy/wrapper.lua \
    --proxy-address=127.0.0.1:3307 \
    --proxy-backend-addresses=localhost:3306


它开始了:

2015-10-26 00:04:34: [global] (*) mysql-proxy 0.9.0 started


然后我使用以下命令登录mysql:

$ mysql -u root -pletmein -h 127.0.0.1 -P 3307


它显示:


  错误1105(HY000):(代理)所有后端均关闭


代理输出:


  2015-10-26 00:04:40:[全局](关键)proxy-plugin.c.1772:无法连接,所有后端均关闭。


我在同一VM上安装MySQL和CryptDB。

我正在GitHub上CryptDB readme上的步骤。



编辑:以下问题已修复,以上问题尚未修复。

另外,原始脚本(cryptdb/mysqlproxy/wrapper.lua)会导致错误:


  2015-10-26 00:24:33:[全局](严重)(lua错误)[/ home / user / cryptdb / mysqlproxy / wrapper.lua]
  
  [string“ /home/user/cryptdb/mysqlproxy/wrapper.lua"]:1:尝试串联nil值


即使我在os.getenv("EDBDIR")nil中设置了EDBDIR,似乎~/.bashrc返回EDBDIR=/home/user/cryptdb

所以我只是这样修改代码,希望这不会引起其他问题:

-- assert(package.loadlib(os.getenv("EDBDIR").."/obj/libexecute.so",
assert(package.loadlib("/home/user/cryptdb/obj/libexecute.so",
                   "lua_cryptdb_init"))()

最佳答案

对于第一个问题,请使用以下命令启动代理:

$ /home/user/cryptdb/bins/proxy-bin/bin/mysql-proxy \
--plugins=proxy \
--event-threads=4 \
--max-open-files=1024 \
--proxy-lua-script=$EDBDIR/mysqlproxy/wrapper.lua \
--proxy-address=127.0.0.1:3307 \
--proxy-backend-addresses=127.0.0.1:3306


注意使用127.0.0.1而不是localhost。

对于第二个问题,按照上面的建议将export EDBDIR=/home/user/cryptdb添加到.bashrc中。

关于mysql - CryptDB-无法连接到代理(错误1105(HY000):(代理)所有后端均关闭),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33332174/

10-11 23:18