Недавно я пытаюсь создать инструмент для синхронизации данных между базами данных с помощью binlog. Этот способ похож на то, что инструмент притворяется сервером MySQL, а затем связывается с реальным сервером MySQL по протоколу MySQL C / S. Я пошел в github и нашел несколько инструментов, которые делают то же самое, поэтому я начал читать их коды. Проблема в том, что эти инструменты используют некоторые заголовочные файлы, включая m_ctype.h
sql_common.h
. У меня установлено libmysqlclient-dev
, но эти заголовки не находятся в /usr/local/includ
. По сути, я хочу использовать simple_command()
, который является макросом в этих файлах, для отправки пакетов данных на реальный сервер. Тогда я обнаружил, что эти файлы находятся в исходных кодах MySQL. Итак, как я могу получить эти заголовки и заставить эти функции и макросы работать? Должен ли я:
- скопировать эти файлы, чтобы включить папку и ссылку на libmysqlclient, как показывает mysql_config
- установить другую библиотеку, может быть lib mysql или что-то еще, и тогда я получу заголовки и заставить все работать
или делать что-то еще?
Если есть другие способы реализации протокола MySQL c / s, это тоже подойдет.
Я проверил файлы libmysqlclient-dev, перечисленные в пакете ubuntu , и обнаружил, что в библиотеке, установленной мной, следуя инструкциям для dev. mysql .com, много заголовков отсутствует, включая my_global.h
my_config.h
et c. Это потому, что я использую источник MySQL? Или по каким-то другим причинам?