mysql-прокси не запускает сценарий lua

#mysql #lua #mysql-proxy

#mysql #lua #mysql-прокси

Вопрос:

Я знаю, что есть много вопросов о прокси-сервере mysql по SO, однако я прочитал многие из них, и ни один, похоже, не решает мою проблему. Я просто пытаюсь запустить и запустить mysql-proxy с конечной целью переписать некоторые запросы, которые проходят через прокси. Я использую ubuntu 14.04, у меня есть mysql-proxy версии 0.8.1 и mysql версии 5.5.37. Чтобы запустить mysql-proxy, я запускаю следующую строку в командной строке

 sudo mysql-proxy --defaults-file=mysql-proxy.cnf
 

где файл mysql-proxy.cnf выглядит следующим образом:

 [mysql-proxy]
log-file=                   /var/log/mysql/proxy-error.log
log-level=                  debug
admin-lua-script=           /usr/lib/mysql-proxy/lua/admin.lua
proxy-lua-script=       /path/to/lua/script/example.lua
admin-username =            myusername
admin-password =            mypassword
proxy-skip-profiling =      true
proxy-address =             localhost:4040
proxy-backend-addresses =   localhost:3306
plugins =                   proxy,admin
 

Мой пример.сценарий lua очень прост и предназначен только для проверки того, что запрос mysql-proxy изменяется. пример.lua вставлен ниже

 -- first_example.lua
function read_query(packet)
    if string.byte(packet) == proxy.COM_QUERY then
        print("Hello world! Seen the query: " .. string.sub(packet, 2))
    end
end
 

Поскольку я не запускаю это с флагом —daemon, когда я запускаю эту строку выше в командной строке, она просто бесконечно повторяется, что и ожидалось.

Наконец, в отдельном сеансе терминала я запускаю следующее в командной строке и ввожу свой пароль для подключения к прокси

 mysql -u myusername -p -h localhost -P 4040
 

Затем я выбираю базу данных для использования и запускаю простой запрос SELECT для одной из таблиц. Основываясь на нескольких статьях / руководствах, которые я прочитал о mysql-proxy, мой первый сеанс консоли, на котором был запущен mysql-proxy, должен распечатать некоторые данные на основе файла example.lua. Однако этого не происходит, на самом деле ничего не происходит.

Я не уверен, имеет ли следующий бит информации какое-либо значение, но в моем конфигурационном файле mysql «my.cnf» у меня есть эти несколько строк

 bind-address            = 255.255.255.255
#bind-address           = 127.0.0.1
 

где я заменил свой фактический ip-адрес на 255.255.255.255, потому что я не хочу показывать свой ip-адрес публично.

Пожалуйста, я пытался разобраться в этом в течение нескольких дней, и никакое количество новых сценариев lua или изменение параметров host:port в файле mysql-proxy.cnf ничего не решили. Я

Комментарии:

1. Дело в том, что вы неправильно подключаетесь к серверу MySQL. Смотрите serverfault.com/questions/306421 /.