怎么修改mysql-proxy的lua执行脚本,使mysql-proxy能够选择store作为server default db ,store作为client default db
时间: 2024-03-11 18:47:48 浏览: 130
要修改mysql-proxy的lua执行脚本,使其能够选择store作为server default db和client default db,你需要按照以下步骤进行操作:
1. 找到mysql-proxy的lua脚本,一般在`/usr/share/mysql-proxy`目录下。
2. 打开`proxy.lua`文件,该文件包含mysql-proxy的主要逻辑。
3. 在文件中找到`function read_query(packet)`函数,该函数用于读取客户端发送的查询语句。
4. 在该函数中添加以下代码:
```lua
-- 设置服务器默认数据库
proxy.queries:append(1, string.format("USE store"), {resultset_is_needed = true})
-- 获取客户端默认数据库
local default_db = packet:default_db()
-- 如果客户端默认数据库不是store,则设置客户端默认数据库为store
if default_db ~= "store" then
packet:default_db("store")
end
```
5. 保存文件并退出。
这样,mysql-proxy就能够选择store作为server default db和client default db了。当客户端发送查询语句时,mysql-proxy会将服务器默认数据库设置为store,并检查客户端默认数据库是否为store,如果不是,则将其设置为store。这样,客户端发送的所有查询都将在store数据库中执行。
阅读全文