Необходимо организовать master-slave конфигурацию, но с одним нюансом, удалять данные можно только с мастера. Слэйв будет служить неким архивом. Для чего решил воспользоваться mysql proxy, чтобы дублировать все запросы, кроме DROP и SELECT на оба сервера. SELECT и DROP должны выполняться только на master сервере. Гугл знает лишь о rw/ro разделении, но о rw/wo никто не слышал.
А чем стандартный функционал разделения прав не подошел? На slave`е есть пользователь, не имеющий прав на drop/delete/replace/update, на мастере другой юзер у которого права есть.
Не совсем понял что вы предлагаете. При master-slave репликации данные будут реплицироваться один в один и если какие-то данные будут удалены в master, они удалятся и в slave. Или я не прав?
А с какой целью вы хотите это сделать? Иметь второй сервер как backup сервер? Если так, то может лучше делать резервные копии с бинлогом? Насколько критично вам потерять данные если кто-то сделает update table set x = 1 where 1=1 или truncate table?
Хранить архивные данные на более медленном железе, но с более емким хранилищем. Пытался это реализовать через бэкап partition'ов, но восстанавливать partition'ы возможно только на mysql 5.6, а оно еще в бете.
Просто если решать задачу через mysqlproxy не будет ли проблем с надёжностью/корректностью данных? Если архивный сервер будет недоступен, то будет ли работать запись в основной сервер? И если будет, то как будет решаться задача корректности данных в архивном? Более правильный путь imho это репликация. Может быть даже с настройкой прав (запрет на удаление таблицы например), но в этом случае репликация будет останавливаться с ошибкой (и нужно будет вручную её перезапускать с sql_slave_skip_counter). Как иначе сделать частичную репликацию я не знаю. Надо гуглить.