binary_log_types.h:没有这样的文件或目录

我正在编译一个小的mysql C项目并且遇到了以下错误:

C:\Program Files (x86)\MySQL\MySQL Server 5.7\include/mysql_com.h:22:30: fatal error: binary_log_types.h: No such file or directory. 

我在C:驱动器上做了一个二进制文件dir binary_log_types.h /b /s ,但我没有找到任何binary_log_types.h文件。

什么是可能的解决方法?

经过一些研究后,我发现由于某种原因,mysql 5.7社区安装程序安装中缺少两个文件binary_log_funcs.hbinary_log_types.h

修复:

1)从MySQL站点下载MySQL服务器源代码。

2)解压缩tar存档。 (我用Winrar这个)

3)转到你的\ Download \ Location \ Here \ mysql-5.7.7-rc \ mysql-5.7.7-rc \ libbinlogevents \ export \

4)从该文件夹中复制binary_log_funcs.hbinary_log_types.h并将它们粘贴到Path \ to \ your \ mysql \ server \ include中。

5)重建Code :: Blocks应用程序。

注意:确保Code :: Blocks具有访问C:目录中的文件和文件夹的权限。 此外,这可能是一个临时修复,因为我强烈认为我没有做一个完整的mysql安装,应该自动包含这些文件。 无论如何我暂时很开心:)

刚刚确认MySQL 5.7.9(64位)中存在此错误:

 C:\Program Files\MySQL\MySQL Server 5.7\include\mysql_com.h(22): fatal error C1083: Cannot open include file: 'binary_log_types.h': No such file or directory` 

我在Visual Studio 2013 Update 5中编译时收到此错误消息,该代码基于与MySQL的通信以将数据存储在数据库中。

我的解决方案是sjsam自己答案的变体。 转到GitHub MySQL存储库并打开此文件夹/目录:

https://github.com/mysql/mysql-server/blob/5.7/libbinlogevents/export/

该文件夹中有2个文件:

  • binary_log_funcs.h
  • binary_log_types.h

使用文件链接将2个文件保存到您自己的计算机(或从文件内容中复制文本,然后将文本保存为与原始文件同名的直接文本文件),然后将这两个文件放在MySQL Server 5.7中include \ folder。 根据您的配置,这可以是以下两种之一:

C:\Program Files\MySQL\MySQL Server 5.7\include\

C:\Program Files (x86)\MySQL\MySQL Server 5.7\include\

恭喜,您现在已经解决了您的问题。 但我想知道为什么mysql.com的开发人员没有将这2个文件添加到MySQL社区服务器5.7.9安装程序包…

以下声明来自: http : //dev.mysql.com/doc/refman/5.6/en/binary-log.html

表示必须使用正确的参数启动mysql服务器

使日志存在。

“要启用二进制日志,请使用–log-bin [= base_name]选项启动服务器。如果未给出base_name值,则默认名称为pid-file选项的值(默认情况下为主机)后跟-bin。如果给出了basename,服务器会将文件写入数据目录,除非给出带有前导绝对路径名的basename来指定不同的目录。建议你明确指定一个basename而不是使用主机名的默认值;请参见第B.5.8节“MySQL中的已知问题”,原因。“

在同一个网页上有很多相关信息。