Windows平台编译MySQL5.7源码

        先备条件:

        1. Visual Studio,这里使用2015版本

        2. MySQL5.7源码,这里使用mysql5.7.24版本

            

        3. cmake编译工具

            

            这是GUI图形工具,也可在安装时加入系统环境变量PATH使得可以使用命令行来进行编译。

        4. Bison

            

        安装完成后添加环境变量:

        

        5. 准备boost源码1.59.0包,这样不用编译时下载,节省时间

        开始编译:

        1. 在源码根目录下新建一个子目录,名字随意,然后复制boost1_59_0的源码包到该目录下(或手动指定另外的目录)

         2. 进入该目录,执行命令生成visual studio工程项目

cmake .. -DDOWNLOAD_BOOST=1 -DWITH_BOOST="D:\usr\path_var\boost_1_59_0.tar.gz" -G "Visual Studio 14"

生成64位的(这里我生成64位的)

cmake .. -DDOWNLOAD_BOOST=1 -DWITH_BOOST="D:\usr\path_var\boost_1_59_0.tar.gz" -G "Visual Studio 14 Win64"

             

           生成vs的项目文件:

           

            3.打开mysql.sln解决方案:

              按F6编译,结果出现如下一堆错误:

              

             关闭解决方案,打开如下文件,用UTF-8格式保存一次,再打开vs编译:

            

              还是不行,忽然想起,mysql5.5以后是需要cmake编译的了……

              cmake --build . --config relwithdebinfo --target package

               编译还是报错,把sql_locale.cc用utf-8有bom格式的保存再试一下:

               

               编译成功:

               

               

               vs也可以编译了:

              

              如果调试,修改mysqld工程的调试参数如下:

              

              

              启用调试符号:

              

              右键mysqld项目启动实例来查看源码和调试即可。

             非调试模式时启动(ctrl +F5)如果报这个错误:

             

            修改mysqld.cc如下部分:

             

            发现default-extral-file参数不起作用,先不管了,因为可执行文件实在sql/debug子目录下,因此,data子目录和my.ini放在和sql同级目录下即可。同时,启动参数需要修改为增加初始化表,否则会启动失败:

           

            再次启动,正常了

            

            这是,先记住这个root密码,然后关掉控制台,把--initialize参数去掉,以免重复初始化,然后再次启动:

           

           navicat也可以连接了:

           

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 精致技术 设计师:CSDN官方博客 返回首页