在我的环境中,MySQL位于:【192.168.11.11】

准备MySQL源码包:
https://dev.mysql.com/downloads/mysql/

选择适合的版本:
在这里,我的平台是【CentOS 7.x】,但是选择这个平台得到的源码包是RPM格式的,因此你要选择的是【Generic Linux】

下载链接:
https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-boost-8.0.26.tar.gz


首先,在本地的VSCode中安装插件:Remote SSH / Remote WSL

然后,连接到远程Linux服务器:

Remote-SSH: Add New SSH Host / 新增一个SSH主机
因为第一次使用,所以你没有可用的主机;你需要新增一个SSH主机
可以查看下Remote SSH生成的配置文件的内容
Remote SSH生成的配置文件的内容
正是因为前面创建成功了,因此这里可以有IP地址供你选择
选择远端服务器的类型:Linux / MS Windows / Apple macOS
注意,这里让你输入的是远端Linux服务器的SSH用户的口令

这样,就成功连到了远端的Linux服务器:

可以看到,这里连接的已经是远端Linux服务器的目录了,这就说明VSCode远程访问配置成功了。


将前面准备好的MySQL源码包上传服务器

然后,解压:

在VSCode中打开:

可以看到,VSCode成功打开了远端Linux上的文件夹;

然后,通过VSCode,在远端服务器上安装插件:

  • C/C++
  • CMake
  • CMake Tools

安装完成后,重新加载远端目录后,再次浏览C语言的源码,就会看到CMake的配置选项:


接下来,演示一个修改MySQL的版本信息,并编译运行的例子;


MySQL的版本信息的定义位置在源码包的:【源码包根目录/include/mysql_version.h.in】

该文件的原内容如下:

这里,我做了一个修改:

其实,后来发现并不是在这个文件配置的,而是在源码根目录下的文件【VERSION】中配置的;

默认的原文件中【MYSQL_VERSION_EXTRA】是空的,这里为了验证,我新增了一些内容;


配置Boost:

注意,在CMake Tools的插件下面有个小齿轮,可以配置Extension的具体配置;
然后,按照上图所示的,在【Cmake: Configure Args】中增加:

  • 【-DWITH_BOOST=./boost】
  • 【-DDOWNLOAD_BOOST=1】

然后执行编译(Build)

注意,在编译的时候,你可能会遇到这样的错误:

这个原因是:远端Linux没有安装【cmake】

解决:

如上所示,安装完成后,就没有这个问题了。

其他需要在远端Linux安装的RPM包:
就像正常的源码包安装一样,需要提前安装RPM包依赖:

正常的情况下,编译(Build)成功的样子是这样的:

最后编译成功的话,会看到【exit code: 0】

接下来,如果要启动【mysqld】,还需要配置CMake的Debug参数:

可以看到,这个配置的修改需要修改文件:settings.json

最后,就可以运行或调试MySQL了:

通过上图中箭头标记的那个虫子的图标,或者虫子图标右边的播放的图标;

首先,生成数据文件:

要运行MySQL之前,你需要找到【mysqld.cc】文件
它位于:【../mysql-8.0.26/sql/mysqld.cc】

查找方法:

然后,就可以看到MySQL运行起来了:

连进去看看:

可以看到已经修改好了。


Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

隐藏
变装