[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"book:4N8m18A2":3,"book:recs:4N8m18A2":96},{"id":4,"created_at":5,"updated_at":6,"code":7,"author_id":8,"title":9,"slug":10,"cover_theme_key":11,"visibility":12,"status":13,"sort_order":4,"favorite_count":14,"view_count":14,"author":15,"chapter_count":27,"word_count":28,"free_count":14,"is_favorite":24,"book_status":13,"unparted":29},7,"2024-03-25T14:11:01.944+08:00","2024-03-25T15:11:19.218+08:00","4N8m18A2",1,"服务器的那些事儿","服务器的那些事儿-7","default","public","published",0,{"id":8,"created_at":16,"updated_at":17,"code":18,"username":19,"display_name":20,"role":21,"avatar_url":22,"is_active":23,"is_banned":24,"follower_count":14,"following_count":25,"last_login_at":26},"2023-11-30T23:53:12.952+08:00","2026-10-20T16:16:54.352+08:00","Mg87g8Gk","1701359592888","大苹果","verified_author","\u002Fcuts\u002F17021220625513129.png",true,false,3,"2026-10-20T16:12:35+08:00",8,142703,[30,38,47,55,63,71,79,88],{"id":31,"created_at":32,"updated_at":32,"code":33,"author_id":8,"book_id":4,"slug":34,"article_id":35,"title":36,"sort_order":31,"content":37,"status":13},29,"2024-03-25T14:11:26.556+08:00","xvXpz6Pw","php5619的编译安装-29",179,"php5.6.19的编译安装","### PHP\n\n- 下载\n  - [php5.6.19](https:\u002F\u002Fwww.php.net\u002Fdistributions\u002Fphp-5.6.19.tar.gz)\n- 解压\n  - `tar -zxvf php-5.6.19.tar.gz`\n\n### 相关依赖安装\n\n- yum安装相关依赖\n\n  ````bash\n\n  yum install -y zlib-devel fontconfig fontconfig-devel libXpm* libtool* libxml2 libxml2-devel curl curl-devel\n  yum -y install make gcc-c++\n  ````\n- 安装 yasm-1.3.0\n\n  ```bash\n  tar -zxvf yasm-1.3.0.tar.gz\n  cd yasm-1.3.0\n  .\u002Fconfigure\n  make && make install\n  ```\n- 安装libmcrypt-2.5.8\n\n  ```bash\n  tar zxvf libmcrypt-2.5.8.tar.gz\n  cd libmcrypt-2.5.8\n  .\u002Fconfigure\n  make && make install\n  ```\n- 安装 libvpx-v1.3.0\n\n  ```bash\n  xz -d libvpx-v1.3.0.tar.xz\n  tar -xvf libvpx-v1.3.0.tar\n  cd libvpx-v1.3.0\n  .\u002Fconfigure --prefix=\u002Fusr\u002Flocal\u002Flibvpx --enable-shared --enable-vp9\n  make && make install\n  ```\n- 安装tiff-4.0.3\n\n  ```bash\n  tar zxvf tiff-4.0.3.tar.gz\n  cd tiff-4.0.3\n  .\u002Fconfigure --prefix=\u002Fusr\u002Flocal\u002Ftiff --enable-shared\n  make && make install\n  ```\n- 安装libpng-1.6.16\n\n  ```bash\n  xz -d libpng-1.6.16.tar.xz\n  tar -xvf libpng-1.6.16.tar\n  cd libpng-1.6.16\n  .\u002Fconfigure --prefix=\u002Fusr\u002Flocal\u002Flibpng --enable-shared\n  make && make install\n  ```\n- 安装freetype-2.5.4\n\n  ```bash\n  tar zxvf freetype-2.5.4.tar.gz\n  cd freetype-2.5.4\n  .\u002Fconfigure --prefix=\u002Fusr\u002Flocal\u002Ffreetype --enable-shared --without-png\n  make && make install\n  ```\n- jpegsrc.v9a\n\n  ```bash\n  tar zxvf jpegsrc.v9a.tar.gz\n  cd jpeg-9a\n  .\u002Fconfigure --prefix=\u002Fusr\u002Flocal\u002Fjpeg --enable-shared\n  make && make install\n  ```\n- libgd-2.1.1\n\n  ```bash\n  tar zxvf libgd-2.1.1.tar.gz\n  cd libgd-2.1.1\n  .\u002Fconfigure \\\n  --prefix=\u002Fusr\u002Flocal\u002Flibgd \\\n  --enable-shared \\\n  --with-jpeg=\u002Fusr\u002Flocal\u002Fjpeg \\\n  --with-png=\u002Fusr\u002Flocal\u002Flibpng \\\n  --with-freetype=\u002Fusr\u002Flocal\u002Ffreetype \\\n  --with-fontconfig=\u002Fusr\u002Flocal\u002Ffreetype \\\n  --with-xpm=\u002Fusr\u002F \\\n  --with-tiff=\u002Fusr\u002Flocal\u002Ftiff \\\n  --with-vpx=\u002Fusr\u002Flocal\u002Flibvpx\n  make && make install\n  ```\n- t1lib-5.1.2\n\n  ```bash\n  tar zxvf t1lib-5.1.2.tar.gz\n  cd t1lib-5.1.2\n  .\u002Fconfigure --prefix=\u002Fusr\u002Flocal\u002Ft1lib --enable-shared\n  make without_doc\n  make install\n  ```\n  #### 将安装的库移动到\u002Fusr\u002Flib\u002F目录下,然后安装php\n\n\n  - centos上已经安装有mysql\n\n  ```bash\n  \\cp -frp \u002Fusr\u002Flib64\u002Flibltdl.so* \u002Fusr\u002Flib\u002F\n  \\cp -frp \u002Fusr\u002Flib64\u002FlibXpm.so* \u002Fusr\u002Flib\u002F\n  export LD_LIBRARY_PATH=\u002Fusr\u002Flocal\u002Flibgd\u002Flib\n\n  cd php-5.6.19\n\n  .\u002Fconfigure \\\n  --prefix=\u002Fusr\u002Flocal\u002Fphp \\\n  --with-config-file-path=\u002Fusr\u002Flocal\u002Fphp\u002Fetc \\\n  --with-mysql=\u002Fusr\u002Flocal\u002Fmysql \\  # mysql路径\n  --with-mysqli=\u002Fusr\u002Flocal\u002Fmysql\u002Fbin\u002Fmysql_config \\  # mysql_config文件路径\n  --with-mysql-sock=\u002Ftmp\u002Fmysqld.sock \\ # mysql sock文件路径\n  --with-pdo-mysql=\u002Fusr\u002Flocal\u002Fmysql \\ # mysql安装路径\n  --with-gd --with-png-dir=\u002Fusr\u002Flocal\u002Flibpng \\\n  --with-jpeg-dir=\u002Fusr\u002Flocal\u002Fjpeg \\\n  --with-freetype-dir=\u002Fusr\u002Flocal\u002Ffreetype \\\n  --with-xpm-dir=\u002Fusr\u002F \\\n  --with-vpx-dir=\u002Fusr\u002Flocal\u002Flibvpx\u002F \\\n  --with-zlib-dir=\u002Fusr\u002Flocal\u002Fzlib \\\n  --with-t1lib=\u002Fusr\u002Flocal\u002Ft1lib \\\n  --with-iconv \\\n  --enable-libxml \\\n  --enable-xml \\\n  --enable-bcmath \\\n  --enable-shmop \\\n  --enable-sysvsem \\\n  --enable-inline-optimization \\\n  --enable-opcache \\\n  --enable-mbregex \\\n  --enable-fpm \\\n  --enable-mbstring \\\n  --enable-ftp \\\n  --enable-gd-native-ttf \\\n  --with-openssl \\\n  --enable-pcntl \\\n  --enable-sockets \\\n  --with-xmlrpc \\\n  --enable-zip \\\n  --enable-soap \\\n  --without-pear \\\n  --with-gettext \\\n  --enable-session \\\n  --with-mcrypt \\\n  --with-curl \\\n  --enable-ctype\n\n  ```\n- centos上没有安装mysql,php编译选项如下\n\n  - 安装mysql-devel\n    ```bash\n    yum install -y mysql-devel\n    ```\n\n  ```bash\n  .\u002Fconfigure \\\n  --prefix=\u002Fusr\u002Flocal\u002Fphp \\\n  --with-config-file-path=\u002Fusr\u002Flocal\u002Fphp\u002Fetc \\\n  --with-mysql=mysqlnd \\\n  --enable-pdo \\\n  --with-pdo-mysql=mysqlnd \\\n  --with-gd --with-png-dir=\u002Fusr\u002Flocal\u002Flibpng \\\n  --with-jpeg-dir=\u002Fusr\u002Flocal\u002Fjpeg \\\n  --with-freetype-dir=\u002Fusr\u002Flocal\u002Ffreetype \\\n  --with-xpm-dir=\u002Fusr\u002F \\\n  --with-vpx-dir=\u002Fusr\u002Flocal\u002Flibvpx\u002F \\\n  --with-zlib-dir=\u002Fusr\u002Flocal\u002Fzlib \\\n  --with-t1lib=\u002Fusr\u002Flocal\u002Ft1lib \\\n  --with-iconv \\\n  --enable-libxml \\\n  --enable-xml \\\n  --enable-bcmath \\\n  --enable-shmop \\\n  --enable-sysvsem \\\n  --enable-inline-optimization \\\n  --enable-opcache \\\n  --enable-mbregex \\\n  --enable-fpm \\\n  --enable-mbstring \\\n  --enable-ftp \\\n  --enable-gd-native-ttf \\\n  --with-openssl \\\n  --enable-pcntl \\\n  --enable-sockets \\\n  --with-xmlrpc \\\n  --enable-zip \\\n  --enable-soap \\\n  --without-pear \\\n  --with-gettext \\\n  --enable-session \\\n  --with-mcrypt \\\n  --with-curl \\\n  --enable-ctype\n  ```\n- 最后一步\n\n  ```bash\n  make && make install\n  cp php.ini-production \u002Fusr\u002Flocal\u002Fphp\u002Fetc\u002Fphp.ini #复制php配置文件到安装目录\n  rm -rf \u002Fetc\u002Fphp.ini #删除系统自带配置文件\n  ln -s \u002Fusr\u002Flocal\u002Fphp\u002Fetc\u002Fphp.ini \u002Fetc\u002Fphp.ini #添加软链接到 \u002Fetc目录\n  cp \u002Fusr\u002Flocal\u002Fphp\u002Fetc\u002Fphp-fpm.conf.default \u002Fusr\u002Flocal\u002Fphp\u002Fetc\u002Fphp-fpm.conf #拷贝模板文件为php-fpm配置文件\n  ln -s \u002Fusr\u002Flocal\u002Fphp\u002Fetc\u002Fphp-fpm.conf \u002Fetc\u002Fphp-fpm.conf #添加软连接到 \u002Fetc目录\n  ```\n",{"id":39,"created_at":40,"updated_at":41,"code":42,"author_id":8,"book_id":4,"slug":43,"article_id":44,"title":45,"sort_order":39,"content":46,"status":13},30,"2024-03-25T15:23:47.708+08:00","2024-03-25T15:24:09.455+08:00","bY8jM6ME","php安装redis的支持-30",180,"php安装redis的支持","### 下载php-redis\n\n[php-redis](https:\u002F\u002Fgithub.com\u002Fnicolasff\u002Fphpredis\u002Farchive\u002F2.2.4.tar.gz)\n\n### 解压\n\n```bash\ntar -zxvf 2.2.4.tar.gz\n\ncd phpredis-2.2.4\u002F\n\n\u002Fusr\u002Flocal\u002Fphp\u002Fbin\u002Fphpize #用phpize生成configure配置文件\n\n.\u002Fconfigure --with-php-config=\u002Fusr\u002Flocal\u002Fphp\u002Fbin\u002Fphp-config  #配置\n\nmake  #编译\nmake install  #安装\n\n```\n\n\n1、安装完成之后，出现下面的安装路径\n\n`\u002Fusr\u002Flocal\u002Fphp\u002Flib\u002Fphp\u002Fextensions\u002Fno-debug-non-zts-20090626\u002F`\n\n\n2、配置php支持\n\n`vim  \u002Fusr\u002Flocal\u002Fphp\u002Fetc\u002Fphp.ini`  #编辑配置文件，在最后一行添加以下内容\n\n添加\n\n`extension=\"redis.so\"`\n\n`:wq!` #保存退出\n\n3、  重启服务\n\n`sudo service nginx restart`\n\n`sudo \u002Fetc\u002Finit.d\u002Fphp-fpm restart`\n",{"id":48,"created_at":49,"updated_at":49,"code":50,"author_id":8,"book_id":4,"slug":51,"article_id":52,"title":53,"sort_order":48,"content":54,"status":13},31,"2024-03-25T15:28:37.366+08:00","xD81VXgY","nginx的编译安装-31",181,"nginx的编译安装","### nginx下载\n\n### 依赖安装\n\n```bash\nyum install zlib zlib-devel openssl openssl-devel pcre-devel -y\n```\n\n### 编译选项\n\n```bash\n.\u002Fconfigure     \\\n--prefix=\u002Fusr\u002Flocal\u002Fnginx     \\\n--sbin-path=\u002Fusr\u002Flocal\u002Fnginx\u002Fsbin\u002Fnginx     \\\n--conf-path=\u002Fusr\u002Flocal\u002Fnginx\u002Fconf\u002Fnginx.conf     \\\n--pid-path=\u002Fusr\u002Flocal\u002Fnginx\u002Fnginx.pid     \\\n--with-http_ssl_module     \\\n--with-zlib=     \\\n--error-log-path=\u002Fusr\u002Flocal\u002Fnginx\u002Ferror\u002Ferror.log  \\   \n--http-log-path=\u002Fusr\u002Flocal\u002Fnginx\u002Ferror\u002Fhttp.log     \\\n--user=www     \\\n--group=root     \\\n--lock-path=\u002Fvar\u002Flock\u002Fnginx.lock     \\\n--with-http_ssl_module     \\\n--with-http_flv_module     \\\n--with-http_stub_status_module     \\\n--with-http_gzip_static_module     \\\n--http-client-body-temp-path=\u002Fvar\u002Ftmp\u002Fnginx\u002Fclient\u002F     \\\n--http-proxy-temp-path=\u002Fvar\u002Ftmp\u002Fnginx\u002Fproxy\u002F     \\\n--http-fastcgi-temp-path=\u002Fvar\u002Ftmp\u002Fnginx\u002Ffcgi\u002F     \\\n--http-uwsgi-temp-path=\u002Fvar\u002Ftmp\u002Fnginx\u002Fuwsgi    \\ \n--http-scgi-temp-path=\u002Fvar\u002Ftmp\u002Fnginx\u002Fscgi     \\\n--with-stream\n```\n\n### 安装\n\n```bash\nmake && make install\n```\n\n### 创建用户组和用户\n\n```bash\ngroupadd www\nuseradd www -g www -d \u002Fhome\u002Fwww\n\n```\n\n### 检查配置文件及启动\n\n```bash\n\u002Fusr\u002Flocal\u002Fnginx\u002Fsbin\u002Fnginx -t\n\n\u002Fusr\u002Flocal\u002Fnginx\u002Fsbin\u002Fnginx \n\n# 重启\n\u002Fusr\u002Flocal\u002Fnginx\u002Fsbin\u002Fnginx -s reload\n```\n",{"id":56,"created_at":57,"updated_at":57,"code":58,"author_id":8,"book_id":4,"slug":59,"article_id":60,"title":61,"sort_order":56,"content":62,"status":13},32,"2024-03-25T15:35:26.679+08:00","JR8xO6Z3","jdk的安装及配置-32",182,"jdk的安装及配置","### centos系统下安装jdk\n\n下载jdk\n\n### 解压下载的jdk移动到`\u002Fusr\u002Flocal\u002Fjdk`\n\n- 配置\n  ```bash\n  vim \u002Fetc\u002Fprofile\n\n  # 文件后增加如下\n  export JAVA_HOME=\u002Fusr\u002Flocal\u002Fjdk\n  export JRE_HOME=\u002Fusr\u002Flocal\u002Fjdk\u002Fjre\n  export CLASSPATH=.:$JAVA_HOME\u002Flib\u002Fdt.jar:$JAVA_HOME\u002Flib\u002Ftools.jar:$JRE_HOME\u002Flib\n  export PATH=$JAVA_HOME\u002Fbin:$JRE_HOME\u002Fbin:$PATH\n  ```\n- 刷新配置\n  ```bash\n  source \u002Fetc\u002Fprofile\n  ```\n",{"id":64,"created_at":65,"updated_at":65,"code":66,"author_id":8,"book_id":4,"slug":67,"article_id":68,"title":69,"sort_order":64,"content":70,"status":13},33,"2024-03-25T15:39:10.629+08:00","M9Xdn6Jw","redis的安装-33",183,"redis的安装","### 下载redis\n\n### 解压redis进入解压后的目录\n\n- 安装依赖\n\n  ```bash\n  yum install -y gcc \n  yum install jemalloc-devel -y\n  yum install bzip2\n\n  cd deps\n  make lua hiredis linenoise\n\n  cd ..\n  make MALLOC=libc\n  make install\n\n  ```\n- 修改配置文件\n\n  ```bash\n  vim \u002Fetc\u002Fredis.conf\n  logfile \"\u002Fvar\u002Flog\u002Fredis\u002Fredis.log\" # 日志文件\n\n  # protected-mode yes # 关闭保护模式，如果需要其他主机可以访问\n\n  daemonize yes # 进程后台运行\n\n  # bind 127.0.0.1 -::1 # 取消绑定本机，允许其他主机访问\n\n  requirepass \"\" #设置密码\n  ```\n- 启动redis服务\n\n  ```bash\n  redis-server \u002Fetc\u002Fredis.conf\n  ```\n",{"id":72,"created_at":73,"updated_at":73,"code":74,"author_id":8,"book_id":4,"slug":75,"article_id":76,"title":77,"sort_order":72,"content":78,"status":13},34,"2024-03-26T02:39:27.032+08:00","Qd8ZJ85M","pm2的安装及使用-34",184,"pm2的安装及使用","### 安装\n\n```bash\nnpm install -g pm2\n```\n\n### 启动node应用\n\n- script\n\n  ```bash\n  pm2 start npm --name applicationName:PORT -- run pro\n  ```\n- 直接运行\n\n  ```bash\n  pm2 start script.js --name applicationName:PORT\n  ```\n\n### 管理\n\n- 查看已经启动的应用\n\n  ```bash\n  pm2 list\n  ```\n- 查看日志\n\n  ```bash\n  pm2 log\n  pm2 log applicationName\n  pm2 log id\n  ```\n- 启动、重启、停止、删除\n\n  ```bash\n  # 启动存在的\n  pm2 start applicationName\n  pm2 start id\n  # 重启\n  pm2 reload applicationName\n  pm2 reload id\n  # 停止\n  pm2 stop applicationName\n  pm2 stop id\n  # 删除\n  pm2 delete applicationName\n  pm2 delete id\n  ```\n- 备份启动列表\n\n  ```bash\n  pm2 save\n  ```\n- 恢复启动列表\n\n  ```bash\n  pm2 resurrect\n  ```\n- 添加自启动\n\n  这个命令将 pm2 自动启动的配置添加到系统启动项中，以确保在系统重新启动后，您的应用程序也会重新启动。\n\n  ```bash\n  pm2 startup\n  ```\n",{"id":80,"created_at":81,"updated_at":82,"code":83,"author_id":8,"book_id":4,"slug":84,"article_id":85,"title":86,"sort_order":80,"content":87,"status":13},35,"2024-03-29T02:57:00.109+08:00","2024-03-29T03:13:17.854+08:00","VzXNZXgb","mysql-源配置选项-35",185,"MySQL 源配置选项","### MySQL 源配置选项\n\nCMake程序提供**了**对如何配置 MySQL 源代码分发的大量控制。通常，您可以使用 **CMake**命令行上的选项来执行此操作。有关**CMake**支持的选项的信息，请在顶级源目录中运行以下命令之一：\n\n```terminal\n$> cmake . -LH\n\n$> ccmake .\n```\n\n您还可以使用某些环境变量影响**CMake** 。请参见 [第 6.9 节“环境变量”](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fenvironment-variables.html \"6.9 环境变量\")。\n\n对于布尔选项，可以将该值指定为 `1`或`ON`来启用该选项，或者指定为`0`或`OFF`来禁用该选项。\n\n许多选项配置编译时默认值，可以在服务器启动时覆盖这些默认值。例如， [`CMAKE_INSTALL_PREFIX`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_cmake_install_prefix)配置 默认安装基目录位置、TCP\u002FIP 端口号和 Unix 套接字文件的 、 和[`MYSQL_TCP_PORT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_mysql_tcp_port)选项 可以在服务器启动时使用mysqld 的、 和 选项 进行更改。在适用的情况下，配置选项描述指示相应的mysqld 启动选项。 [`MYSQL_UNIX_ADDR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_mysql_unix_addr)[`--basedir`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-system-variables.html#sysvar_basedir)[`--port`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-options.html#option_mysqld_port)[`--socket`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-options.html#option_mysqld_socket)[](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysqld.html \"6.3.1 mysqld — MySQL 服务器\")[](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysqld.html \"6.3.1 mysqld — MySQL 服务器\")\n\n以下部分提供有关 **CMake**选项的更多信息。 \n\n* [CMake 选项参考](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#cmake-option-reference \"CMake 选项参考\")\n* [常规选项](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#cmake-general-options \"常规选项\")\n* [安装布局选项](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#cmake-installation-layout-options \"安装布局选项\")\n* [存储引擎选项](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_storage_engine_options \"存储引擎选项\")\n* [功能选项](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#cmake-feature-options \"功能选项\")\n* [编译器标志](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#cmake-compiler-flags \"编译器标志\")\n* [用于编译 NDB Cluster 的 CMake 选项](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#cmake-mysql-cluster-options \"用于编译 NDB Cluster 的 CMake 选项\")\n\n#### CMake 选项参考\n\n下表显示了可用的**CMake** 选项。其中`Default`， `PREFIX`代表 [`CMAKE_INSTALL_PREFIX`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_cmake_install_prefix)选项的值，指定安装基目录。该值用作多个安装子目录的父位置。\n\n**表 2.13 MySQL 源配置选项参考 (CMake)**\n\n\n| 格式                                                                                                                                                                       | 描述                                                                                                | 默认                       |\n| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | -------------------------- |\n| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |                                                                                                     |                            |\n| [`ADD_GDB_INDEX`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_add_gdb_index)                                                    | 是否启用二进制文件中 .gdb_index 部分的生成                                                          |                            |\n| -                                                                                                                                                                          | -                                                                                                   | -                          |\n| [`BUILD_CONFIG`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_build_config)                                                      | 使用与官方版本相同的构建选项                                                                        |                            |\n| [`BUNDLE_RUNTIME_LIBRARIES`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_bundle_runtime_libraries)                              | 将运行时库与适用于 Windows 的服务器 MSI 和 Zip 包捆绑在一起                                         | `OFF`                      |\n| [`CMAKE_BUILD_TYPE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_cmake_build_type)                                              | 要生产的构建类型                                                                                    | `RelWithDebInfo`           |\n| [`CMAKE_CXX_FLAGS`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_cmake_cxx_flags)                                                | C++ 编译器的标志                                                                                    |                            |\n| [`CMAKE_C_FLAGS`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_cmake_c_flags)                                                    | C 编译器的标志                                                                                      |                            |\n| [`CMAKE_INSTALL_PREFIX`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_cmake_install_prefix)                                      | 安装基目录                                                                                          | `\u002Fusr\u002Flocal\u002Fmysql`         |\n| [`COMPILATION_COMMENT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_compilation_comment)                                        | 编译环境评论                                                                                        |                            |\n| [`COMPILATION_COMMENT_SERVER`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_compilation_comment_server)                          | 关于mysqld使用的编译环境的评论                                                                      |                            |\n| [`COMPRESS_DEBUG_SECTIONS`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_compress_debug_sections)                                | 压缩二进制可执行文件的调试部分                                                                      | `OFF`                      |\n| [`CPACK_MONOLITHIC_INSTALL`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_cpack_monolithic_install)                              | 包构建是否生成单个文件                                                                              | `OFF`                      |\n| [`DEFAULT_CHARSET`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_default_charset)                                                | 默认服务器字符集                                                                                    | `utf8mb4`                  |\n| [`DEFAULT_COLLATION`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_default_collation)                                            | 默认服务器排序规则                                                                                  | `utf8mb4_0900_ai_ci`       |\n| [`DISABLE_PSI_COND`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_cond)                                              | 排除性能架构条件检测                                                                                | `OFF`                      |\n| [`DISABLE_PSI_DATA_LOCK`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_data_lock)                                    | 排除性能模式数据锁检测                                                                              | `OFF`                      |\n| [`DISABLE_PSI_ERROR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_error)                                            | 排除性能架构服务器错误检测                                                                          | `OFF`                      |\n| [`DISABLE_PSI_FILE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_file)                                              | 排除性能架构文件检测                                                                                | `OFF`                      |\n| [`DISABLE_PSI_IDLE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_idle)                                              | 排除性能架构空闲检测                                                                                | `OFF`                      |\n| [`DISABLE_PSI_MEMORY`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_memory)                                          | 排除性能架构内存检测                                                                                | `OFF`                      |\n| [`DISABLE_PSI_METADATA`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_metadata)                                      | 排除性能架构元数据检测                                                                              | `OFF`                      |\n| [`DISABLE_PSI_MUTEX`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_mutex)                                            | 排除性能架构互斥检测                                                                                | `OFF`                      |\n| [`DISABLE_PSI_PS`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_ps)                                                  | 排除性能模式准备好的语句                                                                            | `OFF`                      |\n| [`DISABLE_PSI_RWLOCK`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_rwlock)                                          | 排除性能架构 rwlock 检测                                                                            | `OFF`                      |\n| [`DISABLE_PSI_SOCKET`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_socket)                                          | 排除性能架构套接字检测                                                                              | `OFF`                      |\n| [`DISABLE_PSI_SP`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_sp)                                                  | 排除性能模式存储程序检测                                                                            | `OFF`                      |\n| [`DISABLE_PSI_STAGE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_stage)                                            | 排除 Performance Schema 阶段仪表                                                                    | `OFF`                      |\n| [`DISABLE_PSI_STATEMENT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_statement)                                    | 排除性能模式语句检测                                                                                | `OFF`                      |\n| [`DISABLE_PSI_STATEMENT_DIGEST`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_statement_digest)                      | 排除性能模式语句_摘要检测                                                                           | `OFF`                      |\n| [`DISABLE_PSI_TABLE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_table)                                            | 排除性能架构表检测                                                                                  | `OFF`                      |\n| [`DISABLE_PSI_THREAD`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_thread)                                          | 排除性能模式线程检测                                                                                | `OFF`                      |\n| [`DISABLE_PSI_TRANSACTION`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_transaction)                                | 排除性能模式事务检测                                                                                | `OFF`                      |\n| [`ENABLED_LOCAL_INFILE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_enabled_local_infile)                                      | 是否为LOAD DATA启用LOCAL                                                                            | `OFF`                      |\n| [`ENABLED_PROFILING`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_enabled_profiling)                                            | 是否启用查询分析代码                                                                                | `ON`                       |\n| [`ENABLE_EXPERIMENTAL_SYSVARS`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_enable_experimental_sysvars)                        | 是否启用实验性InnoDB系统变量                                                                        | `OFF`                      |\n| [`ENABLE_GCOV`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_enable_gcov)                                                        | 是否包含 gcov 支持                                                                                  |                            |\n| [`ENABLE_GPROF`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_enable_gprof)                                                      | 启用 gprof（仅限优化的 Linux 版本）                                                                 | `OFF`                      |\n| [`FORCE_COLORED_OUTPUT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_force_colored_output)                                      | 是否对编译器输出进行着色                                                                            | `OFF`                      |\n| [`FORCE_INSOURCE_BUILD`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_force_insource_build)                                      | 是否强制进行源内构建                                                                                | `OFF`                      |\n| [`FORCE_UNSUPPORTED_COMPILER`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_force_unsupported_compiler)                          | 是否允许不支持的编译器                                                                              | `OFF`                      |\n| [`FPROFILE_GENERATE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_fprofile_generate)                                            | 是否生成配置文件引导优化数据                                                                        | `OFF`                      |\n| [`FPROFILE_USE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_fprofile_use)                                                      | 是否使用配置文件引导优化数据                                                                        | `OFF`                      |\n| [`HAVE_PSI_MEMORY_INTERFACE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_have_psi_memory_interface)                            | 为过度对齐类型的动态存储中使用的内存分配函数启用性能模式内存跟踪模块                                | `OFF`                      |\n| [`IGNORE_AIO_CHECK`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_ignore_aio_check)                                              | 使用 -DBUILD_CONFIG=mysql_release，忽略 libaio 检查                                                 | `OFF`                      |\n| [`INSTALL_BINDIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_bindir)                                                  | 用户可执行文件目录                                                                                  | `PREFIX\u002Fbin`               |\n| [`INSTALL_DOCDIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_docdir)                                                  | 文档目录                                                                                            | `PREFIX\u002Fdocs`              |\n| [`INSTALL_DOCREADMEDIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_docreadmedir)                                      | 自述文件目录                                                                                        | `PREFIX`                   |\n| [`INSTALL_INCLUDEDIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_includedir)                                          | 头文件目录                                                                                          | `PREFIX\u002Finclude`           |\n| [`INSTALL_INFODIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_infodir)                                                | 信息文件目录                                                                                        | `PREFIX\u002Fdocs`              |\n| [`INSTALL_LAYOUT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_layout)                                                  | 选择预定义的安装布局                                                                                | `STANDALONE`               |\n| [`INSTALL_LIBDIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_libdir)                                                  | 库文件目录                                                                                          | `PREFIX\u002Flib`               |\n| [`INSTALL_MANDIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_mandir)                                                  | 手册页目录                                                                                          | `PREFIX\u002Fman`               |\n| [`INSTALL_MYSQLKEYRINGDIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_mysqlkeyringdir)                                | keyring_file 插件数据文件的目录                                                                     | `platform specific`        |\n| [`INSTALL_MYSQLSHAREDIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_mysqlsharedir)                                    | 共享数据目录                                                                                        | `PREFIX\u002Fshare`             |\n| [`INSTALL_MYSQLTESTDIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_mysqltestdir)                                      | mysql-测试目录                                                                                      | `PREFIX\u002Fmysql-test`        |\n| [`INSTALL_PKGCONFIGDIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_pkgconfigdir)                                      | mysqlclient.pc pkg-config 文件的目录                                                                | `INSTALL_LIBDIR\u002Fpkgconfig` |\n| [`INSTALL_PLUGINDIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_plugindir)                                            | 插件目录                                                                                            | `PREFIX\u002Flib\u002Fplugin`        |\n| [`INSTALL_PRIV_LIBDIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_priv_libdir)                                        | 安装私有库目录                                                                                      |                            |\n| [`INSTALL_SBINDIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_sbindir)                                                | 服务器可执行目录                                                                                    | `PREFIX\u002Fbin`               |\n| [`INSTALL_SECURE_FILE_PRIVDIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_secure_file_privdir)                        | secure_file_priv 默认值                                                                             | `platform specific`        |\n| [`INSTALL_SHAREDIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_sharedir)                                              | aclocal\u002Fmysql.m4安装目录                                                                            | `PREFIX\u002Fshare`             |\n| [`INSTALL_STATIC_LIBRARIES`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_static_libraries)                              | 是否安装静态库                                                                                      | `ON`                       |\n| [`INSTALL_SUPPORTFILESDIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_supportfilesdir)                                | 额外支持文件目录                                                                                    | `PREFIX\u002Fsupport-files`     |\n| [`LINK_RANDOMIZE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_link_randomize)                                                  | 是否随机化 mysqld 二进制文件中符号的顺序                                                            | `OFF`                      |\n| [`LINK_RANDOMIZE_SEED`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_link_randomize_seed)                                        | LINK_RANDOMIZE 选项的种子值                                                                         | `mysql`                    |\n| [`MAX_INDEXES`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_max_indexes)                                                        | 每个表的最大索引数                                                                                  | `64`                       |\n| [`MSVC_CPPCHECK`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_msvc_cppcheck)                                                    | 启用 MSVC 代码分析。                                                                                | `ON`                       |\n| [`MUTEX_TYPE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_mutex_type)                                                          | InnoDB互斥体类型                                                                                    | `event`                    |\n| [`MYSQLX_TCP_PORT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_mysqlx_tcp_port)                                                | X 插件使用的 TCP\u002FIP 端口号                                                                          | `33060`                    |\n| [`MYSQLX_UNIX_ADDR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_mysqlx_unix_addr)                                              | X 插件使用的 Unix 套接字文件                                                                        | `\u002Ftmp\u002Fmysqlx.sock`         |\n| [`MYSQL_DATADIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_mysql_datadir)                                                    | 数据目录                                                                                            |                            |\n| [`MYSQL_MAINTAINER_MODE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_mysql_maintainer_mode)                                    | 是否启用MySQL维护者专用的开发环境                                                                   | `OFF`                      |\n| [`MYSQL_PROJECT_NAME`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_mysql_project_name)                                          | Windows\u002FmacOS 项目名称                                                                              | `MySQL`                    |\n| [`MYSQL_TCP_PORT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_mysql_tcp_port)                                                  | TCP\u002FIP 端口号                                                                                       | `3306`                     |\n| [`MYSQL_UNIX_ADDR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_mysql_unix_addr)                                                | Unix 套接字文件                                                                                     | `\u002Ftmp\u002Fmysql.sock`          |\n| [`NDB_UTILS_LINK_DYNAMIC`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_ndb_utils_link_dynamic)                                  | 导致 NDB 工具动态链接到 ndbclient                                                                   |                            |\n| [`ODBC_INCLUDES`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_odbc_includes)                                                    | ODBC 包含目录                                                                                       |                            |\n| [`ODBC_LIB_DIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_odbc_lib_dir)                                                      | ODBC 库目录                                                                                         |                            |\n| [`OPTIMIZER_TRACE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_optimizer_trace)                                                | 是否支持优化器跟踪                                                                                  |                            |\n| [`OPTIMIZE_SANITIZER_BUILDS`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_optimize_sanitizer_builds)                            | 是否优化消毒剂构建                                                                                  | `ON`                       |\n| [`REPRODUCIBLE_BUILD`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_reproducible_build)                                          | 要格外小心地创建独立于构建位置和时间的构建结果                                                      |                            |\n| [`SHOW_SUPPRESSED_COMPILER_WARNING`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_show_suppressed_compiler_warnings)             | 是否显示抑制的编译器警告并且不会因 -Werror 而失败。                                                 | `OFF`                      |\n| [`SYSCONFDIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_sysconfdir)                                                          | 选项文件目录                                                                                        |                            |\n| [`SYSTEMD_PID_DIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_systemd_pid_dir)                                                | systemd下PID文件的目录                                                                              | `\u002Fvar\u002Frun\u002Fmysqld`          |\n| [`SYSTEMD_SERVICE_NAME`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_systemd_service_name)                                      | systemd下MySQL服务的名称                                                                            | `mysqld`                   |\n| [`TMPDIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_tmpdir)                                                                  | tmpdir 默认值                                                                                       |                            |\n| [`WIN_DEBUG_NO_INLINE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_win_debug_no_inline)                                        | 是否禁用函数内联                                                                                    | `OFF`                      |\n| [`WITHOUT_SERVER`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_without_server)                                                  | 不搭建服务器                                                                                        | `OFF`                      |\n| [`WITHOUT_xxx_STORAGE_ENGINE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_storage_engine_options \"存储引擎选项\")               | 从构建中排除存储引擎 xxx                                                                            |                            |\n| [`WITH_ANT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ant)                                                              | 用于构建 GCS Java 包装器的 Ant 路径                                                                 |                            |\n| [`WITH_ASAN`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_asan)                                                            | 启用AddressSanitizer                                                                                | `OFF`                      |\n| [`WITH_ASAN_SCOPE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_asan_scope)                                                | 启用 AddressSanitizer -fsanitize-address-use-after-scope Clang 标志                                 | `OFF`                      |\n| [`WITH_AUTHENTICATION_CLIENT_PLUGINS`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_authentication_client_plugins)          | 如果构建了任何相应的服务器身份验证插件，则自动启用                                                  |                            |\n| [`WITH_AUTHENTICATION_LDAP`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_authentication_ldap)                              | LDAP认证插件无法构建时是否报错                                                                      | `OFF`                      |\n| [`WITH_AUTHENTICATION_PAM`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_authentication_pam)                                | 构建 PAM 身份验证插件                                                                               | `OFF`                      |\n| [`WITH_AWS_SDK`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_aws_sdk)                                                      | Amazon Web Services 软件开发工具包的位置                                                            |                            |\n| [`WITH_BUILD_ID`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_build_id)                                                    | 在 Linux 系统上，生成唯一的构建 ID                                                                  | `ON`                       |\n| [`WITH_CLASSPATH`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_classpath)                                                  | 构建适用于 Java 的 MySQL Cluster Connector 时使用的类路径。默认为空字符串。                         |                            |\n| [`WITH_CLIENT_PROTOCOL_TRACING`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_client_protocol_tracing)                      | 构建客户端协议追踪框架                                                                              | `ON`                       |\n| [`WITH_CURL`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_curl)                                                            | curl库的位置                                                                                        |                            |\n| [`WITH_DEBUG`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_debug)                                                          | 是否包含调试支持                                                                                    | `OFF`                      |\n| [`WITH_DEFAULT_COMPILER_OPTIONS`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_default_compiler_options)                    | 是否使用默认编译器选项                                                                              | `ON`                       |\n| [`WITH_DEVELOPER_ENTITLEMENTS`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_developer_entitlements)                        | 是否向 macOS 上的所有可执行文件添加“get-task-allow”权限，以便在服务器意外停止时生成核心转储       | `OFF`                      |\n| [`WITH_EDITLINE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_editline)                                                    | 使用哪个 libedit\u002Feditline 库                                                                        | `bundled`                  |\n| [`WITH_ERROR_INSERT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_error_insert)                                            | 在 NDB 存储引擎中启用错误注入。不应用于构建用于生产的二进制文件。                                   | `OFF`                      |\n| [`WITH_FIDO`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_fido)                                                            | FIDO 库支持的类型                                                                                   | `bundled`                  |\n| [`WITH_ICU`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_icu)                                                              | ICU 支持类型                                                                                        | `bundled`                  |\n| [`WITH_INNODB_EXTRA_DEBUG`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_innodb_extra_debug)                                | 是否包含对 InnoDB 的额外调试支持。                                                                  | `OFF`                      |\n| [`WITH_JEMALLOC`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_jemalloc)                                                    | 是否与-ljemalloc链接                                                                                | `OFF`                      |\n| [`WITH_KEYRING_TEST`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_keyring_test)                                            | 构建密钥环测试程序                                                                                  | `OFF`                      |\n| [`WITH_LD`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ld)                                                                | 是否使用LLVM lld或mold链接器                                                                        |                            |\n| [`WITH_LIBEVENT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_libevent)                                                    | 使用哪个 libevent 库                                                                                | `bundled`                  |\n| [`WITH_LIBWRAP`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_libwrap)                                                      | 是否包含libwrap（TCP包装器）支持                                                                    | `OFF`                      |\n| [`WITH_LOCK_ORDER`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_lock_order)                                                | 是否启用LOCK_ORDER工具                                                                              | `OFF`                      |\n| [`WITH_LSAN`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_lsan)                                                            | 是否运行LeakSanitizer，不运行AddressSanitizer                                                       | `OFF`                      |\n| [`WITH_LTO`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_lto)                                                              | 启用链接时间优化器                                                                                  | `OFF`                      |\n| [`WITH_LZ4`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_lz4)                                                              | LZ4 库支持的类型                                                                                    | `bundled`                  |\n| [`WITH_MECAB`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_mecab)                                                          | 编译 MeCab                                                                                          |                            |\n| [`WITH_MSAN`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_msan)                                                            | 启用 MemorySanitizer                                                                                | `OFF`                      |\n| [`WITH_MSCRT_DEBUG`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_mscrt_debug)                                              | 启用 Visual Studio CRT 内存泄漏跟踪                                                                 | `OFF`                      |\n| [`WITH_MYSQLX`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_mysqlx)                                                        | 是否禁用X协议                                                                                       | `ON`                       |\n| [`WITH_NDB`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndb)                                                              | 构建 MySQL NDB 集群                                                                                 | `OFF`                      |\n| [`WITH_NDBAPI_EXAMPLES`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndbapi_examples)                                      | 构建API示例程序                                                                                     | `OFF`                      |\n| [`WITH_NDBCLUSTER`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndbcluster)                                                | 构建NDB存储引擎                                                                                     | `OFF`                      |\n| [`WITH_NDBCLUSTER_STORAGE_ENGINE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndbcluster_storage_engine)                  | 供内部使用；可能无法在所有情况下按预期工作；用户应该使用WITH_NDBCLUSTER来代替                       | `ON`                       |\n| [`WITH_NDBMTD`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndbmtd)                                                        | 构建多线程数据节点。                                                                                | `ON`                       |\n| [`WITH_NDB_DEBUG`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndb_debug)                                                  | 生成用于测试或故障排除的调试版本。                                                                  | `OFF`                      |\n| [`WITH_NDB_JAVA`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndb_java)                                                    | 启用 Java 和 ClusterJ 支持的构建。默认启用。仅在 MySQL 集群中受支持。                               | `ON`                       |\n| [`WITH_NDB_PORT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndb_port)                                                    | 使用此选项构建的管理服务器使用的默认端口。如果未使用此选项来构建它，则管理服务器的默认端口为 1186。 | `[none]`                   |\n| [`WITH_NDB_TEST`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndb_test)                                                    | 包括 NDB API 测试程序。                                                                             | `OFF`                      |\n| [`WITH_NDB_TLS_SEARCH_PATH`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndb_tls_search_path)                              | NDB 程序用于搜索 TLS 证书和密钥文件的默认路径。                                                     | `$HOME\u002Fndb-tls`            |\n| [`WITH_NUMA`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_numa)                                                            | 设置NUMA内存分配策略                                                                                |                            |\n| [`WITH_PACKAGE_FLAGS`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_package_flags)                                          | 对于通常用于 RPM\u002FDEB 包的标志，是否将它们添加到这些平台上的独立构建中                               |                            |\n| [`WITH_PROTOBUF`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_protobuf)                                                    | 使用哪个 Protocol Buffers 包                                                                        | `bundled`                  |\n| [`WITH_RAPID`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_rapid)                                                          | 是否构建快速开发周期插件                                                                            | `ON`                       |\n| [`WITH_RAPIDJSON`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_rapidjson)                                                  | RapidJSON 支持的类型                                                                                | `bundled`                  |\n| [`WITH_ROUTER`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_router)                                                        | 是否构建MySQL Router                                                                                | `ON`                       |\n| [`WITH_SHOW_PARSE_TREE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_show_parse_tree)                                      | 支持 SHOW PARSE_TREE 调试语句                                                                       |                            |\n| [`WITH_SSL`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ssl)                                                              | SSL 支持类型                                                                                        | `system`                   |\n| [`WITH_SYSTEMD`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_systemd)                                                      | 启用 systemd 支持文件的安装                                                                         | `OFF`                      |\n| [`WITH_SYSTEMD_DEBUG`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_systemd_debug)                                          | 启用额外的 systemd 调试信息                                                                         | `OFF`                      |\n| [`WITH_SYSTEM_LIBS`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_system_libs)                                              | 设置未明确设置的库选项的系统值                                                                      | `OFF`                      |\n| [`WITH_TCMALLOC`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_tcmalloc)                                                    | 是否与-ltcmalloc链接                                                                                | `OFF`                      |\n| [`WITH_TEST_TRACE_PLUGIN`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_test_trace_plugin)                                  | 构建测试协议跟踪插件                                                                                | `OFF`                      |\n| [`WITH_TSAN`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_tsan)                                                            | 启用 ThreadSanitizer                                                                                | `OFF`                      |\n| [`WITH_UBSAN`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ubsan)                                                          | 启用未定义行为清理程序                                                                              | `OFF`                      |\n| [`WITH_UNIT_TESTS`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_unit_tests)                                                | 使用单元测试编译 MySQL                                                                              | `ON`                       |\n| [`WITH_UNIXODBC`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_unixodbc)                                                    | 启用 unixODBC 支持                                                                                  | `OFF`                      |\n| [`WITH_VALGRIND`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_valgrind)                                                    | 是否在Valgrind头文件中编译                                                                          | `OFF`                      |\n| [`WITH_WIN_JEMALLOC`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_win_jemalloc)                                            | 包含 jemalloc.dll 的目录的路径                                                                      |                            |\n| [`WITH_ZLIB`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_zlib)                                                            | zlib 支持的类型                                                                                     | `bundled`                  |\n| [`WITH_ZSTD`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_zstd)                                                            | zstd 支持的类型                                                                                     | `bundled`                  |\n| [`WITH_xxx_STORAGE_ENGINE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_storage_engine_options \"存储引擎选项\")                  | 将存储引擎xxx静态编译到服务器中                                                                     |                            |\n\n#### 常规选项\n\n* [`-DBUILD_CONFIG=mysql_release`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_build_config)\n  此选项使用与 Oracle 用于生成官方 MySQL 版本的二进制发行版相同的构建选项来配置源发行版。\n* [`-DWITH_BUILD_ID=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_build_id)\n  在 Linux 系统上，生成一个唯一的构建 ID，用作 [`build_id`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-system-variables.html#sysvar_build_id)系统变量的值并在启动时写入 MySQL 服务器日志。将此选项设置为`OFF`禁用此功能。\n\n  该选项对 Linux 以外的平台没有影响。\n* [`-DBUNDLE_RUNTIME_LIBRARIES=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_bundle_runtime_libraries)\n  是否将运行时库与 Windows 的服务器 MSI 和 Zip 包捆绑在一起。\n* [`-DCMAKE_BUILD_TYPE=\u003Cem class=\"replaceable\">\u003Ccode>type\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_cmake_build_type)\n  要生成的构建类型：\n\n  * `RelWithDebInfo`：启用优化并生成调试信息。这是默认的 MySQL 构建类型。\n  * `Release`：启用优化但省略调试信息以减少构建大小。\n  * `Debug`：禁用优化并生成调试信息。如果[`WITH_DEBUG`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_debug) 启用该选项，也会使用此构建类型。即与 [`-DWITH_DEBUG=1`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_debug)具有相同的效果 [`-DCMAKE_BUILD_TYPE=Debug`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_cmake_build_type)。\n\n  不支持 选项值`None`和 。`MinSizeRel`\n* [`-DCPACK_MONOLITHIC_INSTALL=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_cpack_monolithic_install)\n  该选项影响**make package**操作是生成多个安装包文件还是单个文件。如果禁用，该操作会生成多个安装包文件，如果您只想安装完整 MySQL 安装的子集，这可能很有用。如果启用，它会生成一个用于安装所有内容的文件。\n* [`-DFORCE_INSOURCE_BUILD=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_force_insource_build)\n  定义是否强制进行源内构建。建议使用源外构建，因为它们允许来自同一源的多个构建，并且可以通过删除构建目录来快速执行清理。要强制进行源内构建，请 **使用**[`-DFORCE_INSOURCE_BUILD=ON`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_force_insource_build).\n* [`-DFORCE_COLORED_OUTPUT=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_force_colored_output)\n  定义在命令行编译时 是否启用 **gcc**和**clang**的彩色编译器输出。默认为 `OFF`.\n\n#### 安装布局选项\n\n该[`CMAKE_INSTALL_PREFIX`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_cmake_install_prefix)选项指示基本安装目录。名称形式 指示组件位置的其他选项是相对于前缀进行解释的，它们的值是相对路径名。它们的值不应包含前缀。 `INSTALL_\u003Cem class=\"replaceable\">\u003Ccode>xxx\u003C\u002Fcode>\u003C\u002Fem>`\n\n* [`-DCMAKE_INSTALL_PREFIX=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_cmake_install_prefix)\n  安装基目录。\n\n  可以在服务器启动时使用该选项设置该值 [`--basedir`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-system-variables.html#sysvar_basedir)。\n* [`-DINSTALL_BINDIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_bindir)\n  安装用户程序的位置。\n* [`-DINSTALL_DOCDIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_docdir)\n  在哪里安装文档。\n* [`-DINSTALL_DOCREADMEDIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_docreadmedir)\n  安装文件的位置`README`。\n* [`-DINSTALL_INCLUDEDIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_includedir)\n  安装头文件的位置。\n* [`-DINSTALL_INFODIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_infodir)\n  安装信息文件的位置。\n* [`-DINSTALL_LAYOUT=\u003Cem class=\"replaceable\">\u003Ccode>name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_layout)\n  选择预定义的安装布局：\n\n  * `STANDALONE`：与 `.tar.gz`和 `.zip`包使用的布局相同。这是默认设置。\n  * `RPM`：布局类似于 RPM 包。\n  * `SVR4`：Solaris 软件包布局。\n  * `DEB`：DEB 包布局（实验性）。\n\n  您可以选择预定义的布局，但可以通过指定其他选项来修改各个组件的安装位置。例如：\n\n  ```terminal\n  cmake . -DINSTALL_LAYOUT=SVR4 -DMYSQL_DATADIR=\u002Fvar\u002Fmysql\u002Fdata\n  ```\n\n  该值决定、 和 系统变量[`INSTALL_LAYOUT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_layout)的默认值 。请参阅第 7.1.8 节“服务器系统变量”和 第 8.4.4.19 节“密钥环系统变量”中对这些变量的描述 。 [`secure_file_priv`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-system-variables.html#sysvar_secure_file_priv)[`keyring_encrypted_file_data`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fkeyring-system-variables.html#sysvar_keyring_encrypted_file_data)[`keyring_file_data`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fkeyring-system-variables.html#sysvar_keyring_file_data)[](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-system-variables.html \"7.1.8 服务器系统变量\")[](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fkeyring-system-variables.html \"8.4.4.19 密钥环系统变量\")\n* [`-DINSTALL_LIBDIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_libdir)\n  安装库文件的位置。\n* [`-DINSTALL_MANDIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_mandir)\n  安装手册页的位置。\n* [`-DINSTALL_MYSQLKEYRINGDIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_path\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_mysqlkeyringdir)\n  用作 `keyring_file`插件数据文件位置的默认目录。默认值是特定于平台的，并且取决于CMake选项的值；请参阅第 7.1.8 节“服务器系统变量”中系统变量的描述 。 [`INSTALL_LAYOUT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_layout) [`keyring_file_data`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fkeyring-system-variables.html#sysvar_keyring_file_data)[](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-system-variables.html \"7.1.8 服务器系统变量\")\n* [`-DINSTALL_MYSQLSHAREDIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_mysqlsharedir)\n  在哪里安装共享数据文件。\n* [`-DINSTALL_MYSQLTESTDIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_mysqltestdir)\n  安装目录在哪里`mysql-test` 。要禁止安装此目录，请显式将该选项设置为空值 ( [`-DINSTALL_MYSQLTESTDIR=`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_mysqltestdir))。\n* [`-DINSTALL_PKGCONFIGDIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_pkgconfigdir)\n  安装pkg-config`mysqlclient.pc`使用的文件 的目录 。默认值为 ，除非 以 结尾 ，在这种情况下首先将其删除。 `INSTALL_LIBDIR\u002Fpkgconfig`[`INSTALL_LIBDIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_libdir)`\u002Fmysql`\n* [`-DINSTALL_PLUGINDIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_plugindir)\n  插件目录的位置。\n\n  可以在服务器启动时使用该选项设置该值 [`--plugin_dir`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-system-variables.html#sysvar_plugin_dir)。\n* [`-DINSTALL_PRIV_LIBDIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_priv_libdir)\n  动态库目录的位置。\n\n  **默认位置。 ** 对于 RPM 版本，这是 `\u002Fusr\u002Flib64\u002Fmysql\u002Fprivate\u002F`，对于 DEB 是`\u002Fusr\u002Flib\u002Fmysql\u002Fprivate\u002F`，对于 TAR 是`lib\u002Fprivate\u002F`。\n\n  **原型缓冲区。 ** 由于这是私有位置，因此加载程序（例如 `ld-linux.so`在 Linux 上）在没有帮助的情况下可能找不到`libprotobuf.so`文件。为了引导加载程序， `RPATH=$ORIGIN\u002F..\u002F$INSTALL_PRIV_LIBDIR` 添加到[**mysqld**](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysqld.html \"6.3.1 mysqld — MySQL 服务器\")和 **mysqlxtest**。这适用于大多数情况，但当使用 [资源组](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fresource-groups.html \"7.1.16 资源组\") 功能时，[**mysqld**](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysqld.html \"6.3.1 mysqld — MySQL 服务器\")是 `setsuid`，并且加载程序会忽略任何 `RPATH`包含 `$ORIGIN`.为了克服这个问题，在[**mysqld**](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysqld.html \"6.3.1 mysqld — MySQL 服务器\")的 DEB 和 RPM 版本中设置了目录的显式完整路径，因为目标目的地是已知的。对于 tarball 安装，需要使用 patchelf等工具 修补 [**mysqld 。**](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysqld.html \"6.3.1 mysqld — MySQL 服务器\")\n* [`-DINSTALL_SBINDIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_sbindir)\n  在哪里安装[**mysqld**](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysqld.html \"6.3.1 mysqld — MySQL 服务器\")服务器。\n* [`-DINSTALL_SECURE_FILE_PRIVDIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_secure_file_privdir)\n  系统变量的默认值 [`secure_file_priv`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-system-variables.html#sysvar_secure_file_priv)。默认值是特定于平台的，并且取决于CMake选项的值 ；请参阅第 7.1.8 节“服务器系统变量”中系统变量的描述 。 [`INSTALL_LAYOUT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_layout) [`secure_file_priv`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-system-variables.html#sysvar_secure_file_priv)[](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-system-variables.html \"7.1.8 服务器系统变量\")\n* [`-DINSTALL_SHAREDIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_sharedir)\n  在哪里安装`aclocal\u002Fmysql.m4`。\n* [`-DINSTALL_STATIC_LIBRARIES=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_static_libraries)\n  是否安装静态库。默认为 `ON`.如果设置为`OFF`，则不会安装这些库文件： `libmysqlclient.a`、 `libmysqlservices.a`。\n* [`-DINSTALL_SUPPORTFILESDIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_supportfilesdir)\n  在哪里安装额外的支持文件。\n* [`-DLINK_RANDOMIZE=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_link_randomize)\n  [**是否随机化mysqld**](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysqld.html \"6.3.1 mysqld — MySQL 服务器\")二进制文件 中符号的顺序 。默认为 `OFF`.仅应出于调试目的启用此选项。\n* [`-DLINK_RANDOMIZE_SEED=\u003Cem class=\"replaceable\">\u003Ccode>val\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_link_randomize_seed)\n  期权的种子值 [`LINK_RANDOMIZE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_link_randomize)。该值是一个字符串。默认值为`mysql`，任意选择。\n* [`-DMYSQL_DATADIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_mysql_datadir)\n  MySQL 数据目录的位置。\n\n  可以在服务器启动时使用该选项设置该值 [`--datadir`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-system-variables.html#sysvar_datadir)。\n* [`-DODBC_INCLUDES=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_odbc_includes)\n  ODBC 的位置包括目录，在配置 Connector\u002FODBC 时可以使用该目录。\n* [`-DODBC_LIB_DIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_odbc_lib_dir)\n  ODBC 库目录的位置，在配置 Connector\u002FODBC 时可能会使用该目录。\n* [`-DSYSCONFDIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_sysconfdir)\n  默认`my.cnf`选项文件目录。\n\n  该位置无法在服务器启动时设置，但您可以使用 选项通过给定选项文件启动服务器 ，其中是文件的完整路径名。 [`--defaults-file=\u003Cem class=\"replaceable\">\u003Ccode>file_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Foption-file-options.html#option_general_defaults-file)*`file_name`*\n* [`-DSYSTEMD_PID_DIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_systemd_pid_dir)\n  MySQL由systemd管理时创建PID文件的目录名。默认为 `\u002Fvar\u002Frun\u002Fmysqld`；这可能会根据 [`INSTALL_LAYOUT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_layout)值隐式更改。\n\n  [`WITH_SYSTEMD`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_systemd)除非启用， 否则该选项将被忽略 。\n* [`-DSYSTEMD_SERVICE_NAME=\u003Cem class=\"replaceable\">\u003Ccode>name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_systemd_service_name)\n  **当 MySQL 由systemd** 管理时要使用的 MySQL 服务的名称。默认为 `mysqld`；这可能会根据 [`INSTALL_LAYOUT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_layout)值隐式更改。\n\n  [`WITH_SYSTEMD`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_systemd)除非启用， 否则该选项将被忽略 。\n* [`-DTMPDIR=\u003Cem class=\"replaceable\">\u003Ccode>dir_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_tmpdir)\n  用于 [`tmpdir`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-system-variables.html#sysvar_tmpdir)系统变量的默认位置。如果未指定，则该值默认为 `P_tmpdir`in `\u003Cstdio.h>`。\n\n#### 存储引擎选项\n\n存储引擎是作为插件构建的。您可以将插件构建为静态模块（编译到服务器中）或动态模块（构建为动态库，必须使用[`INSTALL PLUGIN`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Finstall-plugin.html \"15.7.4.4 安装插件语句\") 语句或选项将其安装到服务器中[`--plugin-load`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-options.html#option_mysqld_plugin-load) 才能使用）。某些插件可能不支持静态或动态构建。\n\n[`InnoDB`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Finnodb-storage-engine.html \"第十七章 InnoDB 存储引擎\")、 [`MyISAM`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmyisam-storage-engine.html \"18.2 MyISAM存储引擎\")、 [`MERGE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmerge-storage-engine.html \"18.7 MERGE存储引擎\")、 [`MEMORY`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmemory-storage-engine.html \"18.3 MEMORY存储引擎\")和 引擎[`CSV`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fcsv-storage-engine.html \"18.4 CSV存储引擎\")是强制性的（始终编译到服务器中）并且不需要显式安装。\n\n要将存储引擎静态编译到服务器中，请使用 .一些允许的值为 、、 和。例子： `-DWITH_\u003Cem class=\"replaceable\">\u003Ccode>engine\u003C\u002Fcode>\u003C\u002Fem>_STORAGE_ENGINE=1`*`engine`*`ARCHIVE``BLACKHOLE``EXAMPLE``FEDERATED`\n\n```ini\n-DWITH_ARCHIVE_STORAGE_ENGINE=1\n-DWITH_BLACKHOLE_STORAGE_ENGINE=1\n```\n\n要构建支持 NDB Cluster 的 MySQL，请使用该 [`WITH_NDB`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndb)选项。\n\n笔记\n\n如果没有性能模式支持，则无法进行编译。如果希望在不使用特定类型的工具的情况下进行编译，可以使用以下 **CMake**选项来完成：\n\n```simple\nDISABLE_PSI_COND\nDISABLE_PSI_DATA_LOCK\nDISABLE_PSI_ERROR\nDISABLE_PSI_FILE\nDISABLE_PSI_IDLE\nDISABLE_PSI_MEMORY\nDISABLE_PSI_METADATA\nDISABLE_PSI_MUTEX\nDISABLE_PSI_PS\nDISABLE_PSI_RWLOCK\nDISABLE_PSI_SOCKET\nDISABLE_PSI_SP\nDISABLE_PSI_STAGE\nDISABLE_PSI_STATEMENT\nDISABLE_PSI_STATEMENT_DIGEST\nDISABLE_PSI_TABLE\nDISABLE_PSI_THREAD\nDISABLE_PSI_TRANSACTION\n```\n\n例如，要在不使用互斥量检测的情况下进行编译，请使用 [`-DDISABLE_PSI_MUTEX=1`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_mutex).\n\n要从构建中排除存储引擎，请使用 .例子： `-DWITH_\u003Cem class=\"replaceable\">\u003Ccode>engine\u003C\u002Fcode>\u003C\u002Fem>_STORAGE_ENGINE=0`\n\n```ini\n-DWITH_ARCHIVE_STORAGE_ENGINE=0\n-DWITH_EXAMPLE_STORAGE_ENGINE=0\n-DWITH_FEDERATED_STORAGE_ENGINE=0\n```\n\n也可以从构建中排除存储引擎 （但这 是首选）。例子： `-DWITHOUT_\u003Cem class=\"replaceable\">\u003Ccode>engine\u003C\u002Fcode>\u003C\u002Fem>_STORAGE_ENGINE=1``-DWITH_\u003Cem class=\"replaceable\">\u003Ccode>engine\u003C\u002Fcode>\u003C\u002Fem>_STORAGE_ENGINE=0`\n\n```ini\n-DWITHOUT_ARCHIVE_STORAGE_ENGINE=1\n-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1\n-DWITHOUT_FEDERATED_STORAGE_ENGINE=1\n```\n\n如果给定存储引擎既没有 指定 也没有 指定，则该引擎将构建为共享模块，如果不能构建为共享模块则将其排除。 `-DWITH_\u003Cem class=\"replaceable\">\u003Ccode>engine\u003C\u002Fcode>\u003C\u002Fem>_STORAGE_ENGINE``-DWITHOUT_\u003Cem class=\"replaceable\">\u003Ccode>engine\u003C\u002Fcode>\u003C\u002Fem>_STORAGE_ENGINE`\n\n#### 功能选项\n\n* [`-DADD_GDB_INDEX=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_add_gdb_index)\n  此选项确定是否启用 `.gdb_index`二进制文件中的节的生成，这使得将它们更快地加载到调试器中。默认情况下该选项处于禁用状态。使用**lld**链接器，并通过 禁用它。如果使用 **lld**或 GNU **gold**以外的链接器，则无效 。\n* [`-DCOMPILATION_COMMENT=\u003Cem class=\"replaceable\">\u003Ccode>string\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_compilation_comment)\n  关于编译环境的描述性注释。当[**mysqld**](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysqld.html \"6.3.1 mysqld — MySQL 服务器\")使用 时[`COMPILATION_COMMENT_SERVER`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_compilation_comment_server)，其他程序也使用 [`COMPILATION_COMMENT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_compilation_comment).\n* [`-DCOMPRESS_DEBUG_SECTIONS=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_compress_debug_sections)\n  是否压缩二进制可执行文件的调试部分（仅限 Linux）。压缩可执行调试部分可以节省空间，但代价是在构建过程中需要额外的 CPU 时间。\n\n  默认为`OFF`.如果未显式设置此选项但 `COMPRESS_DEBUG_SECTIONS`设置了环境变量，则该选项将从该变量获取其值。\n* [`-DCOMPILATION_COMMENT_SERVER=\u003Cem class=\"replaceable\">\u003Ccode>string\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_compilation_comment_server)\n  关于[**mysqld**](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysqld.html \"6.3.1 mysqld — MySQL 服务器\")使用的编译环境的描述性注释（例如，设置 [`version_comment`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-system-variables.html#sysvar_version_comment)系统变量）。服务器以外的程序使用 [`COMPILATION_COMMENT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_compilation_comment)。\n* [`-DDEFAULT_CHARSET=\u003Cem class=\"replaceable\">\u003Ccode>charset_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_default_charset)\n  服务器字符集。默认情况下，MySQL 使用该 `utf8mb4`字符集。\n\n  *`charset_name`*可以 是以下之一 `binary`：`armscii8`,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 。`ascii``big5``cp1250``cp1251``cp1256``cp1257``cp850``cp852``cp866``cp932``dec8``eucjpms``euckr``gb2312``gbk``geostd8``greek``hebrew``hp8``keybcs2``koi8r``koi8u``latin1``latin2``latin5``latin7``macce``macroman``sjis``swe7``tis620``ucs2``ujis``utf8mb3``utf8mb4``utf16``utf16le``utf32`\n\n  可以在服务器启动时使用该选项设置该值 [`--character-set-server`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-system-variables.html#sysvar_character_set_server) 。\n* [`-DDEFAULT_COLLATION=\u003Cem class=\"replaceable\">\u003Ccode>collation_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_default_collation)\n  服务器排序规则。默认情况下，MySQL 使用 `utf8mb4_0900_ai_ci`.使用该 [`SHOW COLLATION`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fshow-collation.html \"15.7.7.5 SHOW COLLATION 语句\")语句确定每个字符集可用的排序规则。\n\n  可以在服务器启动时使用该选项设置该值 [`--collation_server`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-system-variables.html#sysvar_collation_server)。\n* [`-DDISABLE_PSI_COND=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_cond)\n  是否排除性能模式条件检测。默认为`OFF` （包含）。\n* [`-DDISABLE_PSI_FILE=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_file)\n  是否排除性能架构文件检测。默认为`OFF` （包含）。\n* [`-DDISABLE_PSI_IDLE=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_idle)\n  是否排除性能模式空闲检测。默认为`OFF` （包含）。\n* [`-DDISABLE_PSI_MEMORY=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_memory)\n  是否排除性能模式内存检测。默认为`OFF` （包含）。\n* [`-DDISABLE_PSI_METADATA=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_metadata)\n  是否排除性能模式元数据检测。默认为`OFF` （包含）。\n* [`-DDISABLE_PSI_MUTEX=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_mutex)\n  是否排除性能模式互斥检测。默认为`OFF` （包含）。\n* [`-DDISABLE_PSI_RWLOCK=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_rwlock)\n  是否排除性能架构 rwlock 检测。默认为`OFF` （包含）。\n* [`-DDISABLE_PSI_SOCKET=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_socket)\n  是否排除性能模式套接字检测。默认为`OFF` （包含）。\n* [`-DDISABLE_PSI_SP=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_sp)\n  是否排除性能模式存储的程序检测。默认为`OFF` （包含）。\n* [`-DDISABLE_PSI_STAGE=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_stage)\n  是否排除 Performance Schema 阶段检测。默认为`OFF` （包含）。\n* [`-DDISABLE_PSI_STATEMENT=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_statement)\n  是否排除 Performance Schema 语句检测。默认为`OFF` （包含）。\n* [`-DDISABLE_PSI_STATEMENT_DIGEST=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_statement_digest)\n  是否排除性能模式语句摘要检测。默认为`OFF` （包含）。\n* [`-DDISABLE_PSI_TABLE=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_table)\n  是否排除性能模式表检测。默认为`OFF` （包含）。\n* [`-DDISABLE_PSI_PS=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_ps)\n  排除性能模式准备好的语句实例检测。默认为`OFF` （包含）。\n* [`-DDISABLE_PSI_THREAD=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_thread)\n  排除性能模式线程检测。默认为`OFF`（包含）。\n\n  仅在没有任何检测的情况下构建时禁用线程，因为其他检测依赖于线程。\n* [`-DDISABLE_PSI_TRANSACTION=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_transaction)\n  排除性能模式事务工具。默认为`OFF`（包含）。\n* [`-DDISABLE_PSI_DATA_LOCK=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_data_lock)\n  排除性能模式数据锁检测。默认为`OFF`（包含）。\n* [`-DDISABLE_PSI_ERROR=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_disable_psi_error)\n  排除性能模式服务器错误检测。默认为`OFF`（包含）。\n* [`-DENABLE_EXPERIMENTAL_SYSVARS=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_enable_experimental_sysvars)\n  是否启用实验`InnoDB` 系统变量。实验系统变量适用于那些从事 MySQL 开发的人员，只能在开发或测试环境中使用，并且可能会在未来的 MySQL 版本中删除，恕不另行通知。有关实验系统变量的信息，请参阅 `\u002Fstorage\u002Finnobase\u002Fhandler\u002Fha_innodb.cc` MySQL 源代码树。实验系统变量可以通过搜索“ PLUGIN_VAR_EXPERIMENTAL ”来识别 。\n* [`-DWITHOUT_SERVER=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_without_server)\n  是否构建不带MySQL Server。默认值为“关闭”，这会构建服务器。\n\n  这被认为是一个实验性的选择；最好与服务器一起构建。\n* [`-DENABLE_GCOV=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_enable_gcov)\n  是否包含**gcov**支持（仅限 Linux）。\n* [`-DENABLE_GPROF=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_enable_gprof)\n  是否启用**gprof**（仅限优化的 Linux 版本）。\n* [`-DENABLED_LOCAL_INFILE=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_enabled_local_infile)\n  `LOCAL`该选项控制MySQL 客户端库的 编译默认 功能。因此，未做出明确安排的客户端会`LOCAL`根据 [`ENABLED_LOCAL_INFILE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_enabled_local_infile)MySQL 构建时指定的设置禁用或启用功能。\n\n  默认情况下，MySQL 二进制发行版中的客户端库在编译时 [`ENABLED_LOCAL_INFILE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_enabled_local_infile)禁用。如果您从源代码编译 MySQL，请 [`ENABLED_LOCAL_INFILE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_enabled_local_infile)根据未做出明确安排的客户端是否应禁用或启用`LOCAL`功能分别将其配置为禁用或启用。\n\n  [`ENABLED_LOCAL_INFILE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_enabled_local_infile)控制客户端`LOCAL` 功能的默认值。对于服务器来说， [`local_infile`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-system-variables.html#sysvar_local_infile)系统变量控制服务器端的`LOCAL` 能力。要显式地使服务器拒绝或允许[`LOAD DATA LOCAL`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fload-data.html \"15.2.9 加载数据语句\")语句（无论客户端程序和库在构建时或运行时如何配置），请分别以 禁用或启用的方式启动[**mysqld**](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysqld.html \"6.3.1 mysqld — MySQL 服务器\")[`--local-infile`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-system-variables.html#sysvar_local_infile)。 [`local_infile`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-system-variables.html#sysvar_local_infile)也可以在运行时设置。请参见 [第 8.1.6 节“LOAD DATA LOCAL 的安全注意事项”](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fload-data-local-security.html \"8.1.6 LOAD DATA LOCAL 的安全注意事项\")。\n* [`-DENABLED_PROFILING=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_enabled_profiling)\n  是否启用查询分析代码（对于 [`SHOW PROFILE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fshow-profile.html \"15.7.7.32 SHOW PROFILE 语句\")和 [`SHOW PROFILES`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fshow-profiles.html \"15.7.7.33 SHOW PROFILES 语句\")语句）。\n* [`-DFORCE_UNSUPPORTED_COMPILER=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_force_unsupported_compiler)\n  默认情况下，**CMake**[检查支持的编译器](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-installation-prerequisites.html \"2.8.2 源安装先决条件\")的最低版本 ；要禁用此检查，请使用 [`-DFORCE_UNSUPPORTED_COMPILER=ON`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_force_unsupported_compiler).\n* [`-DSHOW_SUPPRESSED_COMPILER_WARNINGS=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_show_suppressed_compiler_warnings)\n  显示抑制的编译器警告，并且这样做不会因`-Werror`.默认为 `OFF`.\n* [`-DFPROFILE_GENERATE=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_fprofile_generate)\n  是否生成配置文件引导优化 (PGO) 数据。此选项可用于通过 GCC 试验 PGO。`cmake\u002Ffprofile.cmake`有关使用 [`FPROFILE_GENERATE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_fprofile_generate)和 的 信息，请参阅MySQL 源代码发行版[`FPROFILE_USE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_fprofile_use)。这些选项已使用 GCC 8 和 9 进行了测试。\n* [`-DFPROFILE_USE=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_fprofile_use)\n  是否使用配置文件引导优化 (PGO) 数据。此选项可用于通过 GCC 试验 PGO。`cmake\u002Ffprofile.cmake`有关使用 [`FPROFILE_GENERATE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_fprofile_generate)和 的 信息，请参阅MySQL 源代码发行版中的文件[`FPROFILE_USE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_fprofile_use)。这些选项已使用 GCC 8 和 9 进行了测试。\n\n  启用[`FPROFILE_USE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_fprofile_use)还可以启用[`WITH_LTO`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_lto).\n* [`-DHAVE_PSI_MEMORY_INTERFACE=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_have_psi_memory_interface)\n  是否为过度对齐类型的动态存储中使用的 内存分配函数（库函数）启用性能模式内存跟踪模块。`ut::aligned_\u003Cem class=\"replaceable\">\u003Ccode>name\u003C\u002Fcode>\u003C\u002Fem>`\n* [`-DIGNORE_AIO_CHECK=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_ignore_aio_check)\n  如果 [`-DBUILD_CONFIG=mysql_release`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_build_config) 在 Linux 上给出该选项，则`libaio` 默认情况下必须链接该库。如果您没有 `libaio`或不想安装它，您可以通过指定 来取消对它的检查 [`-DIGNORE_AIO_CHECK=1`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_ignore_aio_check)。\n* [`-DMAX_INDEXES=\u003Cem class=\"replaceable\">\u003Ccode>num\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_max_indexes)\n  每个表的最大索引数。默认值为 64。最大值为 255。小于 64 的值将被忽略，并使用默认值 64。\n* [`-DMYSQL_MAINTAINER_MODE=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_mysql_maintainer_mode)\n  是否启用 MySQL 维护者特定的开发环境。如果启用，此选项会导致编译器警告变为错误。\n* [`-DWITH_DEVELOPER_ENTITLEMENTS=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_developer_entitlements)\n  是否`get-task-allow` 向所有可执行文件添加在服务器意外停止时生成核心转储的权利。\n\n  在 macOS 11+ 上，核心转储仅限于具有 `com.apple.security.get-task-allow` 此 CMake 选项启用的权利的进程。该权利允许其他进程附加和读取\u002F修改进程内存，并允许 [`--core-file`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-options.html#option_mysqld_core-file)按预期运行。\n* [`-DMUTEX_TYPE=\u003Cem class=\"replaceable\">\u003Ccode>type\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_mutex_type)\n  所使用的互斥锁类型`InnoDB`。选项包括：\n\n  * `event`：使用事件互斥体。这是默认值和原始`InnoDB` 互斥体实现。\n  * `sys`：在 UNIX 系统上使用 POSIX 互斥体。使用`CRITICAL_SECTION`Windows 上的对象（如果可用）。\n  * `futex`：使用 Linux futexes 而不是条件变量来调度等待线程。\n* [`-DMYSQLX_TCP_PORT=\u003Cem class=\"replaceable\">\u003Ccode>port_num\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_mysqlx_tcp_port)\n  X Plugin 侦听 TCP\u002FIP 连接的端口号。默认值为 33060。\n\n  该值可以在服务器启动时使用系统变量设置 [`mysqlx_port`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fx-plugin-options-system-variables.html#sysvar_mysqlx_port)。\n* [`-DMYSQLX_UNIX_ADDR=\u003Cem class=\"replaceable\">\u003Ccode>file_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_mysqlx_unix_addr)\n  服务器侦听 X 插件套接字连接的 Unix 套接字文件路径。这必须是绝对路径名。默认为`\u002Ftmp\u002Fmysqlx.sock`.\n\n  该值可以在服务器启动时使用系统变量设置 [`mysqlx_port`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fx-plugin-options-system-variables.html#sysvar_mysqlx_port)。\n* [`-DMYSQL_PROJECT_NAME=\u003Cem class=\"replaceable\">\u003Ccode>name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_mysql_project_name)\n  对于 Windows 或 macOS，要合并到项目文件名中的项目名称。\n* [`-DMYSQL_TCP_PORT=\u003Cem class=\"replaceable\">\u003Ccode>port_num\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_mysql_tcp_port)\n  服务器侦听 TCP\u002FIP 连接的端口号。默认值为 3306。\n\n  可以在服务器启动时使用该选项设置该值 [`--port`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-options.html#option_mysqld_port)。\n* [`-DMYSQL_UNIX_ADDR=\u003Cem class=\"replaceable\">\u003Ccode>file_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_mysql_unix_addr)\n  服务器侦听套接字连接的 Unix 套接字文件路径。这必须是绝对路径名。默认为`\u002Ftmp\u002Fmysql.sock`.\n\n  可以在服务器启动时使用该选项设置该值 [`--socket`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-options.html#option_mysqld_socket)。\n* [`-DOPTIMIZER_TRACE=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_optimizer_trace)\n  是否支持优化器跟踪。请参阅 [MySQL 内部原理：跟踪优化器](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Finternals\u002Fen\u002Foptimizer-tracing.html)。\n* [`-DREPRODUCIBLE_BUILD=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_reproducible_build)\n  对于 Linux 系统上的构建，此选项控制是否格外小心地创建独立于构建位置和时间的构建结果。\n\n  此选项默认用于`ON`构建 `RelWithDebInfo`。\n* [`-DWITH_LD=\u003Cem class=\"replaceable\">\u003Ccode>string\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ld)\n  **CMake**默认使用标准链接器。可以选择传入`lld`或 `mold`来指定替代链接器。 **模具**必须是版本 2 或更新版本。\n\n  此选项可用于除 Enterprise Linux 之外的基于 Linux 的系统，Enterprise Linux 始终使用 **ld**链接器。\n\n  笔记\n\n  以前，该选项`USE_LD_LLD`可用于启用（默认）或显式禁用 Clang 的 LLVM **lld**链接器。在 MySQL 8.3 中，`USE_LD_LLD`已被删除。\n* [`-DWIN_DEBUG_NO_INLINE=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_win_debug_no_inline)\n  是否在 Windows 上禁用函数内联。默认值为`OFF`（启用内联）。\n* [`-DWITH_ANT=\u003Cem class=\"replaceable\">\u003Ccode>path_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ant)\n  设置 Ant 的路径，这是构建 GCS Java 包装器时所需的。设置[`WITH_ANT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ant)为保存 Ant tarball 或解压存档的目录路径。当 [`WITH_ANT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ant)未设置或使用特殊值设置时`system`，构建过程假定二进制文件`ant`存在于 中 `$PATH`。\n* [`-DWITH_ASAN=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_asan)\n  是否启用AddressSanitizer，对于支持它的编译器。默认为`OFF`.\n* [`-DWITH_ASAN_SCOPE=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_asan_scope)\n  是否启用 AddressSanitizer `-fsanitize-address-use-after-scope`Clang 标志以进行作用域后使用检测。默认关闭。要使用此选项，`-DWITH_ASAN` 还必须启用。\n* [`-DWITH_AUTHENTICATION_CLIENT_PLUGINS=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_authentication_client_plugins)\n  如果构建了任何相应的服务器身份验证插件，则会自动启用此选项。因此，它的值取决于其他**CMake**选项，不应显式设置。\n* [`-DWITH_AUTHENTICATION_LDAP=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_authentication_ldap)\n  LDAP认证插件无法构建时是否报错：\n\n  * 如果禁用此选项（默认），则在找到所需的头文件和库时构建 LDAP 插件。如果不是， **CMake**会显示有关它的注释。\n  * 如果启用此选项，则无法找到所需的头文件和库会导致 CMake 产生错误，从而阻止构建服务器。\n* [`-DWITH_AUTHENTICATION_PAM=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_authentication_pam)\n  是否为包含此插件的源树构建 PAM 身份验证插件。 （请参见 [第 8.4.1.5 节“PAM 可插入身份验证”](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fpam-pluggable-authentication.html \"8.4.1.5 PAM 可插入身份验证\")。）如果指定了此选项并且无法编译插件，则构建会失败。\n* [`-DWITH_AWS_SDK=\u003Cem class=\"replaceable\">\u003Ccode>path_name\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_aws_sdk)\n  Amazon Web Services 软件开发工具包的位置。\n* [`-DWITH_CLIENT_PROTOCOL_TRACING=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_client_protocol_tracing)\n  是否将客户端协议追踪框架构建到客户端库中。默认情况下，此选项处于启用状态。\n\n  有关编写协议跟踪客户端插件的信息，请参阅[编写协议跟踪插件](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Fextending-mysql\u002F8.3\u002Fen\u002Fwriting-protocol-trace-plugins.html)。\n\n  另请参阅 [`WITH_TEST_TRACE_PLUGIN`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_test_trace_plugin)选项。\n* [`-DWITH_CURL=\u003Cem class=\"replaceable\">\u003Ccode>curl_type\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_curl)\n  图书馆的位置`curl`。 *`curl_type`*可以是 `system`（使用系统 `curl`库）、库的路径名 `curl`、 `no`| `off`|`none` 禁用curl支持，或者`bundled`使用 `extra\u002Fcurl\u002F`.\n* [`-DWITH_DEBUG=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_debug)\n  是否包含调试支持。\n\n  通过配置 MySQL 的调试支持，您可以[`--debug=\"d,parser_debug\"`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-options.html#option_mysqld_debug) 在启动服务器时使用该选项。这会导致用于处理 SQL 语句的 Bison 解析器将解析器跟踪转储到服务器的标准错误输出。通常，此输出会写入错误日志。\n\n  存储引擎的同步调试检查`InnoDB` 在下面定义 `UNIV_DEBUG`，并且在使用该选项编译调试支持时可用 [`WITH_DEBUG`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_debug)。当编译了调试支持时， [`innodb_sync_debug`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Finnodb-parameters.html#sysvar_innodb_sync_debug) 配置选项可用于启用或禁用 `InnoDB`同步调试检查。\n\n  启用[`WITH_DEBUG`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_debug)还会启用调试同步。该设施用于测试和调试。编译后，调试同步在运行时默认处于禁用状态。要启用它，请 使用以下 选项启动[**mysqld**](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysqld.html \"6.3.1 mysqld — MySQL 服务器\") ，其中是大于 0 的超时值。（默认值为 0，这将禁用调试同步。）成为各个同步点的默认超时。 [`--debug-sync-timeout=\u003Cem class=\"replaceable\">\u003Ccode>N\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fserver-options.html#option_mysqld_debug-sync-timeout)*`N`**`N`*\n\n  `InnoDB` 当使用该选项编译调试支持时，可以使用存储引擎 的同步调试检查[`WITH_DEBUG`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_debug)。\n\n  有关调试同步工具以及如何使用同步点的说明，请参阅 [MySQL 内部：测试同步](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Finternals\u002Fen\u002Ftest-synchronization.html)。\n* [`-DWITH_EDITLINE=\u003Cem class=\"replaceable\">\u003Ccode>value\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_editline)\n  使用 哪个`libedit`\u002F库。`editline`允许的值为 `bundled`（默认值） 和 `system`。\n* [`-DWITH_FIDO=\u003Cem class=\"replaceable\">\u003Ccode>fido_type\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_fido)\n  身份验证插件`authentication_fido`是使用 FIDO 库实现的（请参阅 [第 8.4.1.12 节“FIDO 可插入身份验证”](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Ffido-pluggable-authentication.html \"8.4.1.12 FIDO 可插入身份验证\")）。该 [`WITH_FIDO`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_fido)选项指示 FIDO 支持的来源：\n\n  * `bundled`：使用与发行版捆绑在一起的 FIDO 库。这是默认设置。\n    MySQL 包含`fido2`版本 1.8.0。\n  * `system`：使用系统FIDO库。\n\n  [`WITH_FIDO`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_fido)`none`如果禁用所有身份验证插件，则被 禁用（设置为 ）。\n* [`-DWITH_ICU={\u003Cem class=\"replaceable\">\u003Ccode>icu_type\u003C\u002Fcode>\u003C\u002Fem>|\u003Cem class=\"replaceable\">\u003Ccode>path_name\u003C\u002Fcode>\u003C\u002Fem>}`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_icu)\n  MySQL 使用 International Components for Unicode (ICU) 来支持正则表达式操作。该 `WITH_ICU`选项指示要包含的 ICU 支持类型或要使用的 ICU 安装的路径名。\n\n  * *`icu_type`*可以是以下值之一：\n    * `bundled`：使用与发行版捆绑在一起的 ICU 库。这是默认选项，也是 Windows 唯一支持的选项。\n    * `system`：使用系统ICU库。\n  * *`path_name`*是要使用的 ICU 安装的路径名。这比使用 的*`icu_type`*值 更可取，`system`因为它可以防止 CMake 检测和使用系统上安装的较旧或不正确的 ICU 版本。 （执行相同操作的另一种允许方法是设置`WITH_ICU` 为`system`并将 `CMAKE_PREFIX_PATH`选项设置为 *`path_name`*。）\n* [`-DWITH_INNODB_EXTRA_DEBUG=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_innodb_extra_debug)\n  是否包含额外的 InnoDB 调试支持。\n\n  启用`WITH_INNODB_EXTRA_DEBUG`会开启额外的 InnoDB 调试检查。该选项只有在[`WITH_DEBUG`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_debug)启用 时才可以启用。\n* [`-DWITH_JEMALLOC=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_jemalloc)\n  是否链接到`-ljemalloc`.如果启用，内置`malloc()`、 `calloc()`、`realloc()`和`free()`例程将被禁用。默认为`OFF`.\n\n  [`WITH_JEMALLOC`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_jemalloc)并且 [`WITH_TCMALLOC`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_tcmalloc)是互斥的。\n* [`-DWITH_WIN_JEMALLOC=\u003Cem class=\"replaceable\">\u003Ccode>string\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_win_jemalloc)\n  `jemalloc.dll`在 Windows 上，传入包含启用 jemalloc 功能的 目录的路径 。构建系统将其复制 到与和\u002F或 `jemalloc.dll`相同的目录， 并将其用于内存管理操作。如果找不到或未导出所需的函数，则使用标准内存函数。 INFORMATION 级别的日志消息记录是否找到并使用了 jemalloc。 `mysqld.exe``mysqld-debug.exe``jemalloc.dll`\n\n  此选项针对 Windows 官方 MySQL 二进制文件启用。\n* [`-DWITH_KEYRING_TEST=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_keyring_test)\n  是否构建插件附带的测试程序 `keyring_file`。默认为 `OFF`.测试文件源代码位于该`plugin\u002Fkeyring\u002Fkeyring-test` 目录中。\n* [`-DWITH_LIBEVENT=\u003Cem class=\"replaceable\">\u003Ccode>string\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_libevent)\n  `libevent`使用 哪个库。允许的值为`bundled`（默认）和 `system`。如果`system`指定并且找不到系统`libevent`库，则无论如何都会发生错误，并且 `libevent`不使用捆绑的。\n\n  memcached、X Plugin 和 MySQL Router `libevent`需要 该库。`InnoDB`\n* [`-DWITH_LIBWRAP=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_libwrap)\n  是否包含`libwrap`（TCP 包装器）支持。\n* [`-DWITH_LOCK_ORDER=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_lock_order)\n  是否启用 LOCK_ORDER 工具。默认情况下，此选项处于禁用状态，并且服务器版本不包含任何工具。如果启用了工具，则 LOCK_ORDER 工具可用，并且可以按照[第 7.9.3 节 “LOCK_ORDER 工具”](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Flock-order-tool.html \"7.9.3 LOCK_ORDER 工具\")中所述使用。\n\n  笔记\n\n  启用该[`WITH_LOCK_ORDER`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_lock_order) 选项后，MySQL 构建需要 **flex**程序。\n* [`-DWITH_LSAN=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_lsan)\n  是否运行 LeakSanitizer，而不运行 AddressSanitizer。默认为`OFF`.\n* [`-DWITH_LTO=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_lto)\n  是否启用链接时优化器（如果编译器支持）。默认为`OFF`除非 [`FPROFILE_USE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_fprofile_use)启用。\n* [`-DWITH_LZ4=\u003Cem class=\"replaceable\">\u003Ccode>lz4_type\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_lz4)\n  该[`WITH_LZ4`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_lz4)选项指示支持来源`zlib`：\n\n  * `bundled`：使用 `lz4`与发行版捆绑在一起的库。这是默认设置。\n  * `system`：使用系统 `lz4`库。如果 [`WITH_LZ4`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_lz4)设置为此值，则不会构建[**lz4_decompress**](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Flz4-decompress.html \"6.8.1 lz4_decompress — 解压缩 mysqlpump LZ4 压缩输出\")实用程序。在这种情况下，可以使用 系统 **lz4命令来代替。**\n* [`-DWITH_MECAB={disabled|system|\u003Cem class=\"replaceable\">\u003Ccode>path_name\u003C\u002Fcode>\u003C\u002Fem>}`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_mecab)\n  使用此选项编译 MeCab 解析器。如果您已将 MeCab 安装到其默认安装目录，请设置 `-DWITH_MECAB=system`.该 `system`选项适用于使用本机包管理实用程序从源代码或二进制文件执行的 MeCab 安装。如果您将 MeCab 安装到自定义安装目录，请指定 MeCab 安装路径，例如 `-DWITH_MECAB=\u002Fopt\u002Fmecab`。如果该 `system`选项不起作用，则指定 MeCab 安装路径应该在所有情况下都有效。\n\n  有关相关信息，请参阅 [第 14.9.9 节 “MeCab 全文解析器插件”](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Ffulltext-search-mecab.html \"14.9.9 MeCab 全文解析器插件\")。\n* [`-DWITH_MSAN=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_msan)\n  是否启用 MemorySanitizer，对于支持它的编译器。默认关闭。\n\n  为了使该选项在启用后生效，链接到 MySQL 的所有库也必须在启用该选项的情况下进行编译。\n* [`-DWITH_MSCRT_DEBUG=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_mscrt_debug)\n  是否启用 Visual Studio CRT 内存泄漏跟踪。默认为`OFF`.\n* [`-DMSVC_CPPCHECK=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_msvc_cppcheck)\n  是否启用MSVC代码分析。默认为 `ON`.\n* [`-DWITH_MYSQLX=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_mysqlx)\n  是否构建支持 X Plugin。默认为 `ON`.请参阅[第 22 章，*使用 MySQL 作为文档存储*](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fdocument-store.html \"第22章使用MySQL作为文档存储\")。\n* [`-DWITH_NUMA=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_numa)\n  显式设置 NUMA 内存分配策略。 **CMake**[`WITH_NUMA`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_numa)根据当前平台是否支持来设置默认 值`NUMA` 。对于不支持 NUMA 的平台， **CMake 的**行为如下：\n\n  * 如果没有 NUMA 选项（正常情况）， **CMake**会正常继续，仅生成此警告：NUMA 库丢失或所需版本不可用。\n  * 使用 时[`-DWITH_NUMA=ON`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_numa)， **CMake**会中止并出现以下错误： NUMA 库丢失或所需版本不可用。\n* [`-DWITH_PACKAGE_FLAGS=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_package_flags)\n  对于通常用于 RPM 和 Debian 软件包的标志，是否将它们添加到这些平台上的独立构建中。默认值适用`ON`于非调试版本。\n* [`-DWITH_PROTOBUF=\u003Cem class=\"replaceable\">\u003Ccode>protobuf_type\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_protobuf)\n  使用哪个 Protocol Buffers 包。 *`protobuf_type`*可以是以下值之一：\n\n  * `bundled`：使用与发行版捆绑在一起的包。这是默认设置。 （可选）用于 [`INSTALL_PRIV_LIBDIR`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_install_priv_libdir)修改动态 Protobuf 库目录。\n  * `system`：使用系统上安装的软件包。\n\n  其他值将被忽略，并回退到 `bundled`.\n* [`-DWITH_RAPID=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_rapid)\n  是否构建快速开发周期插件。启用后，`rapid`将在包含这些插件的构建树中创建一个目录。禁用时，不会`rapid`在构建树中创建任何目录。默认值为`ON`，除非该 `rapid`目录已从源代码树中删除，在这种情况下默认值为 `OFF`。\n* [`-DWITH_RAPIDJSON=\u003Cem class=\"replaceable\">\u003Ccode>rapidjson_type\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_rapidjson)\n  要包含的 RapidJSON 库支持的类型。 *`rapidjson_type`*可以是以下值之一：\n\n  * `bundled`：使用与发行版捆绑在一起的 RapidJSON 库。这是默认设置。\n  * `system`：使用系统RapidJSON库。需要 1.1.0 或更高版本。\n* [`-DWITH_ROUTER=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_router)\n  是否构建MySQL Router。默认为 `ON`.\n* [`-DWITH_SSL={\u003Cem class=\"replaceable\">\u003Ccode>ssl_type\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ssl)| *`path_name`*}\n  为了支持加密连接、随机数生成的熵以及其他与加密相关的操作，MySQL 必须使用 SSL 库构建。此选项指定要使用哪个 SSL 库。\n\n  * *`ssl_type`*可以是以下值之一：\n    * `system`：使用系统OpenSSL库。这是默认设置。\n      在 macOS 和 Windows 上，使用 `system`配置 MySQL 进行构建，就像通过 *`path_name`*指向手动安装的 OpenSSL 库调用 CMake 一样。这是因为他们没有系统 SSL 库。在 macOS 上， *brew install openssl*会安装到，`\u002Fusr\u002Flocal\u002Fopt\u002Fopenssl`以便`system`可以找到它。在 Windows 上，它检查 `%ProgramFiles%\u002FOpenSSL`、 `%ProgramFiles%\u002FOpenSSL-Win32`、 `%ProgramFiles%\u002FOpenSSL-Win64`、 `C:\u002FOpenSSL`、 `C:\u002FOpenSSL-Win32`和 `C:\u002FOpenSSL-Win64`。\n    * `yes`: 这是 的同义词 `system`。\n    * `openssl\u003Cem class=\"replaceable\">\u003Ccode>version\u003C\u002Fcode>\u003C\u002Fem>`：使用备用 OpenSSL 系统软件包，例如 `openssl11`在 EL7 上，或 `openssl3`（或 `openssl3-fips`）在 EL8 上。\n      身份验证插件（例如 LDAP 和 Kerberos）被禁用，因为它们不支持这些替代版本的 OpenSSL。\n  * *`path_name`*是要使用的 OpenSSL 安装的路径名。这比使用该*`ssl_type`*值 更可取，`system`因为它可以防止 CMake 检测和使用系统上安装的较旧或不正确的 OpenSSL 版本。 （执行相同操作的另一种允许方法是设置`WITH_SSL` 为`system`并将 `CMAKE_PREFIX_PATH`选项设置为 *`path_name`*。）\n\n  有关配置 SSL 库的其他信息，请参阅 [第 2.8.6 节 “配置 SSL 库支持”](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-ssl-library-configuration.html \"2.8.6 配置 SSL 库支持\")。\n* [`-DWITH_SHOW_PARSE_TREE=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_show_parse_tree)\n  [`SHOW PARSE_TREE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fshow-parse-tree.html \"15.7.7.26 SHOW PARSE_TREE 语句\")在服务器中 启用支持，仅用于开发和调试。不用于发布版本或在生产中受支持。\n* [`-DWITH_SYSTEMD=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_systemd)\n  是否启用**systemd** 支持文件的安装。默认情况下，此选项处于禁用状态。启用后，将安装**systemd支持文件，但不会安装**[**mysqld_safe**](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysqld-safe.html \"6.3.2 mysqld_safe — MySQL 服务器启动脚本\")和 System V 初始化脚本等脚本 。在**systemd**不可用的 平台上 ，启用会导致CMake[`WITH_SYSTEMD`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_systemd)出错。\n\n  当使用此选项构建服务器时，MySQL 会将所有**systemd**消息包含在服务器的错误日志中（请参见[第 7.4.2 节“错误日志”](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Ferror-log.html \"7.4.2 错误日志\")）。\n\n  有关使用**systemd 的**更多信息，请参阅[第 2.5.9 节 “使用 systemd 管理 MySQL 服务器”](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fusing-systemd.html \"2.5.9 使用systemd管理MySQL服务器\")。该部分还包括有关指定选项组中其他指定选项的信息`[mysqld_safe]`。由于使用systemd时未安装 [**mysqld_safe**](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysqld-safe.html \"6.3.2 mysqld_safe — MySQL 服务器启动脚本\")，因此必须以其他方式指定此类选项。\n* [`-DWITH_SYSTEM_LIBS=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_system_libs)\n  此选项充当“伞”选项，用于设置`system`以下任何未显式设置的**CMake**[`WITH_CURL`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_curl)选项的值： , [`WITH_EDITLINE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_editline), [`WITH_FIDO`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_fido), [`WITH_ICU`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_icu), [`WITH_LIBEVENT`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_libevent), [`WITH_LZ4`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_lz4), [`WITH_LZMA`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.0\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_lzma), [`WITH_PROTOBUF`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_protobuf), [`WITH_RE2`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.0\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_re2), [`WITH_SSL`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ssl), [`WITH_ZLIB`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_zlib), [`WITH_ZSTD`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_zstd)。\n* [`-DWITH_SYSTEMD_DEBUG=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_systemd_debug)\n  对于使用systemd运行 MySQL的平台， 是否生成额外的**systemd** 调试信息 。默认为. `OFF`\n* [`-DWITH_TCMALLOC=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_tcmalloc)\n  是否链接到`-ltcmalloc`.如果启用，内置`malloc()`、 `calloc()`、`realloc()`和`free()`例程将被禁用。默认为`OFF`.\n\n  [`WITH_TCMALLOC`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_tcmalloc)并且 [`WITH_JEMALLOC`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_jemalloc)是互斥的。\n* [`-DWITH_TEST_TRACE_PLUGIN=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_test_trace_plugin)\n  是否构建测试协议跟踪客户端插件（请参阅 [使用测试协议跟踪插件](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Fextending-mysql\u002F8.3\u002Fen\u002Ftest-protocol-trace-plugin.html)）。默认情况下，此选项处于禁用状态。除非[`WITH_CLIENT_PROTOCOL_TRACING`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_client_protocol_tracing) 启用该选项，否则启用该选项不会产生任何效果 。如果 MySQL 配置为启用这两个选项，则`libmysqlclient`客户端库将使用内置的测试协议跟踪插件构建，并且所有标准 MySQL 客户端都会加载该插件。然而，即使启用了测试插件，默认情况下也没有效果。使用环境变量可以控制插件；请参阅 [使用测试协议跟踪插件](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Fextending-mysql\u002F8.3\u002Fen\u002Ftest-protocol-trace-plugin.html)。\n\n  笔记\n\n  如果您想使用自己的协议跟踪插件，请*不要*启用该 [`WITH_TEST_TRACE_PLUGIN`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_test_trace_plugin) 选项，因为一次只能加载一个此类插件，并且尝试加载第二个插件时会发生错误。如果您已经构建了 MySQL，并启用了测试协议跟踪插件以查看其工作原理，则必须在不使用它的情况下重建 MySQL，然后才能使用自己的插件。\n\n  有关编写跟踪插件的信息，请参阅 [编写协议跟踪插件](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Fextending-mysql\u002F8.3\u002Fen\u002Fwriting-protocol-trace-plugins.html)。\n* [`-DWITH_TSAN=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_tsan)\n  是否启用 ThreadSanitizer（对于支持它的编译器）。默认关闭。\n* [`-DWITH_UBSAN=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ubsan)\n  是否为支持未定义行为清理程序的编译器启用它。默认关闭。\n* [`-DWITH_UNIT_TESTS={ON|OFF}`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_unit_tests)\n  如果启用，则使用单元测试编译 MySQL。默认值是 `ON`除非服务器没有被编译。\n* [`-DWITH_UNIXODBC=\u003Cem class=\"replaceable\">\u003Ccode>1\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_unixodbc)\n  为 Connector\u002FODBC 启用 unixODBC 支持。\n* [`-DWITH_VALGRIND=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_valgrind)\n  是否在 Valgrind 头文件中进行编译，这会将 Valgrind API 公开给 MySQL 代码。默认为 `OFF`.\n\n  要生成 Valgrind 感知的调试版本， [`-DWITH_VALGRIND=1`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_valgrind)通常与[`-DWITH_DEBUG=1`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_debug).请参阅 [构建调试配置](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Finternals\u002Fen\u002Fdebug-configurations.html)。\n* [`-DWITH_ZLIB=\u003Cem class=\"replaceable\">\u003Ccode>zlib_type\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_zlib)\n  某些功能要求服务器构建有压缩库支持，例如 [`COMPRESS()`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fencryption-functions.html#function_compress)和 [`UNCOMPRESS()`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fencryption-functions.html#function_uncompress)函数以及客户端\u002F服务器协议的压缩。该 [`WITH_ZLIB`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_zlib)选项指示支持来源`zlib`：\n\n  最低支持版本`zlib`是 1.2.13。\n\n  * `bundled`：使用 `zlib`与发行版捆绑在一起的库。这是默认设置。\n  * `system`：使用系统 `zlib`库。如果 [`WITH_ZLIB`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_zlib)设置为此值，则不会构建[**zlib_decompress**](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fzlib-decompress.html \"6.8.3 zlib_decompress — 解压缩 mysqlpump ZLIB 压缩输出\")实用程序。在这种情况下，可以使用 系统**openssl zlib命令来代替。**\n* [`-DWITH_ZSTD=\u003Cem class=\"replaceable\">\u003Ccode>zstd_type\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_zstd)\n  使用该算法的连接压缩`zstd` （请参见 [第 6.2.8 节“连接压缩控制”](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fconnection-compression-control.html \"6.2.8 连接压缩控制\")）要求服务器构建有`zstd` 库支持。该[`WITH_ZSTD`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_zstd) 选项指示支持来源`zstd` ：\n\n  * `bundled`：使用 `zstd`与发行版捆绑在一起的库。这是默认设置。\n  * `system`：使用系统 `zstd`库。\n\n#### 编译器标志\n\n* [`-DCMAKE_C_FLAGS=\"\u003Cem class=\"replaceable\">\u003Ccode>flags\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_cmake_c_flags)”\n  C 编译器的标志。\n* [`-DCMAKE_CXX_FLAGS=\"\u003Cem class=\"replaceable\">\u003Ccode>flags\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_cmake_cxx_flags)”\n  C++ 编译器的标志。\n* [`-DWITH_DEFAULT_COMPILER_OPTIONS=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_default_compiler_options)\n  是否使用来自 的标志 `cmake\u002Fbuild_configurations\u002Fcompiler_options.cmake`。\n\n  笔记\n\n  所有优化标志均由 MySQL 构建团队精心选择和测试。覆盖它们可能会导致意外结果，您需要自行承担风险。\n* [`-DOPTIMIZE_SANITIZER_BUILDS=\u003Cem class=\"replaceable\">\u003Ccode>bool\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_optimize_sanitizer_builds)\n  是否添加`-O1 -fno-inline`到消毒剂版本中。默认为`ON`.\n\n要指定您自己的 C 和 C++ 编译器标志，对于不影响优化的标志，请使用 [`CMAKE_C_FLAGS`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_cmake_c_flags)和 [`CMAKE_CXX_FLAGS`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_cmake_cxx_flags)CMake 选项。\n\n[`CMAKE_BUILD_TYPE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_cmake_build_type)当提供您自己的编译器标志时，您可能还 需要指定。\n\n例如，要在 64 位 Linux 计算机上创建 32 位发行版本，请执行以下操作：\n\n```terminal\n$> mkdir build\n$> cd build\n$> cmake .. -DCMAKE_C_FLAGS=-m32 \\\n  -DCMAKE_CXX_FLAGS=-m32 \\\n  -DCMAKE_BUILD_TYPE=RelWithDebInfo\n```\n\n如果设置影响优化的标志 ( )，则必须设置 和\u002F或 选项，其中对应于值。要为默认构建类型 ( ) 指定不同的优化，请设置 和 选项。例如，要在 Linux 上使用调试符号进行编译，请执行以下操作： `-O\u003Cem class=\"replaceable\">\u003Ccode>number\u003C\u002Fcode>\u003C\u002Fem>``CMAKE_C_FLAGS_\u003Cem class=\"replaceable\">\u003Ccode>build_type\u003C\u002Fcode>\u003C\u002Fem>``CMAKE_CXX_FLAGS_\u003Cem class=\"replaceable\">\u003Ccode>build_type\u003C\u002Fcode>\u003C\u002Fem>`*`build_type`*[`CMAKE_BUILD_TYPE`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_cmake_build_type)`RelWithDebInfo``CMAKE_C_FLAGS_RELWITHDEBINFO``CMAKE_CXX_FLAGS_RELWITHDEBINFO``-O3`\n\n```terminal\n$> cmake .. -DCMAKE_C_FLAGS_RELWITHDEBINFO=\"-O3 -g\" \\\n  -DCMAKE_CXX_FLAGS_RELWITHDEBINFO=\"-O3 -g\"\n```\n\n#### 用于编译 NDB Cluster 的 CMake 选项\n\n以下选项可在构建具有 NDB Cluster 支持的 MySQL 源时使用。\n\n* [`-DNDB_UTILS_LINK_DYNAMIC={ON|OFF}`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_ndb_utils_link_dynamic)\n  控制 NDB 实用程序（例如 [**ndb_drop_table）**](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysql-cluster-programs-ndb-drop-table.html \"25.5.11 ndb_drop_table — 删除 NDB 表\")`ndbclient`是静态（`OFF`）还是动态（`ON`）链接 ； `OFF`（静态链接）是默认值。通常在构建这些版本时使用静态链接以避免出现问题 ，或者在安装`LD_LIBRARY_PATH`多个版本时使用静态链接。`ndbclient`此选项旨在创建 Docker 映像以及可能的其他情况，其中目标环境受到精确控制并且需要减小映像大小。\n* [`-DWITH_CLASSPATH=\u003Cem class=\"replaceable\">\u003Ccode>path\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_classpath)\n  设置用于构建 Java 的 MySQL NDB Cluster Connector 的类路径。默认为空。如果[`-DWITH_NDB_JAVA=OFF`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndb_java)使用 该选项，则忽略该选项 。\n* [`-DWITH_ERROR_INSERT={ON|OFF}`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_error_insert)\n  在内核中启用错误注入 [`NDB`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysql-cluster.html \"第25章MySQL NDB集群8.3\")。仅用于测试；不适用于构建生产二进制文件。默认为`OFF`.\n* [`-DWITH_NDB={ON|OFF}`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndb)\n  构建MySQL NDB集群；构建 NDB 插件和所有 NDB Cluster 程序。\n* [`-DWITH_NDBAPI_EXAMPLES={ON|OFF}`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndbapi_examples)\n  在 `storage\u002Fndb\u002Fndbapi-examples\u002F`.有关这些的信息， 请参阅 [NDB API 示例。](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Fndbapi\u002Fen\u002Fndb-examples.html)\n* [`-DWITH_NDBCLUSTER_STORAGE_ENGINE={ON|OFF}`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndbcluster_storage_engine)\n  （仅）控制`ndbcluster` 插件是否包含在构建中； [`WITH_NDB`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndb)自动启用此选项，因此建议您 `WITH_NDB`改为使用。\n* [`-DWITH_NDBCLUSTER={ON|OFF}`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndbcluster)\n  构建和链接以支持 mysqld[`NDB`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysql-cluster.html \"第25章MySQL NDB集群8.3\")中的存储引擎 。[](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysqld.html \"6.3.1 mysqld — MySQL 服务器\")\n\n  此选项已被弃用，并可能最终被删除；代替使用[`WITH_NDB`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndb)。\n* [`-DWITH_NDBMTD={ON|OFF}`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndbmtd)\n  构建多线程数据节点可执行文件 [**ndbmtd**](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysql-cluster-programs-ndbmtd.html \"25.5.3 ndbmtd — NDB Cluster 数据节点守护进程（多线程）\")。默认为 `ON`.\n* [`-DWITH_NDB_DEBUG={ON|OFF}`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndb_debug)\n  启用构建 NDB Cluster 二进制文件的调试版本。这是`OFF`默认情况。\n* [`-DWITH_NDB_JAVA={ON|OFF}`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndb_java)\n  启用使用 Java 支持构建 NDB Cluster，包括对 ClusterJ 的支持（请参阅适用[于 Java 的 MySQL NDB Cluster Connector](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Fndbapi\u002Fen\u002Fmccj.html)）。\n\n  此选项`ON`为默认选项。如果您不希望编译具有 Java 支持的 NDB Cluster，则必须通过 `-DWITH_NDB_JAVA=OFF`在运行 **CMake**时指定来显式禁用它。否则，如果找不到 Java，则构建配置将失败。\n* [`-DWITH_NDB_PORT=\u003Cem class=\"replaceable\">\u003Ccode>port\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndb_port)\n  导致 NDB Cluster 管理服务器（[**ndb_mgmd**](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysql-cluster-programs-ndb-mgmd.html \"25.5.4 ndb_mgmd — NDB集群管理服务器守护进程\")）默认使用它 *`port`*。如果未设置此选项，则生成的管理服务器默认尝试使用端口 1186。\n* [`-DWITH_NDB_TEST={ON|OFF}`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndb_test)\n  如果启用，请包含一组 NDB API 测试程序。默认为`OFF`.\n* [`-DWITH_NDB_TLS_SEARCH_PATH=\u003Cem class=\"replaceable\">\u003Ccode>path\u003C\u002Fcode>\u003C\u002Fem>`](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fsource-configuration-options.html#option_cmake_with_ndb_tls_search_path)\n  [**设置ndb_sign_keys**](https:\u002F\u002Fdev.mysql.com\u002Fdoc\u002Frefman\u002F8.3\u002Fen\u002Fmysql-cluster-programs-ndb-sign-keys.html \"25.5.28 ndb_sign_keys - 为 NDB Cluster 创建、签名和管理 TLS 密钥和证书\")和其他 `NDB`程序搜索TLS证书和密钥文件的 默认路径 。\n\n  Windows 平台的默认值是 `$HOMEDIR\u002Fndb-tls`；对于其他平台，例如 Linux，它是`$HOME\u002Fndb-tls`.\n",{"id":89,"created_at":90,"updated_at":90,"code":91,"author_id":8,"book_id":4,"slug":92,"article_id":93,"title":94,"sort_order":89,"content":95,"status":13},36,"2024-03-29T03:18:41.508+08:00","MwKBnK7Q","mysql8源码安装-36",186,"Mysql8源码安装","### 环境\n\n- 操作系统 centos\n- mysql8.3\n- cmake版本大于3.5\n- gcc版本大于7.1\n\n### 准备工作\n\n- 更新系统\n\n  ```bash\n  yum update\n  ```\n- 升级cmake\n\n  - 安装OpenSSL或者 -DCMAKE_USE_OPENSSL=OFF\n    ```bash\n    yum install openssl openssl-devel -y\n    ```\n\n  [升级文档](http:\u002F\u002Fwww.okgoes.com\u002Fblog\u002Fdetail?blog_id=86)\n\n  ```bash\n  export CMAKE_ROOT=\u002Fusr\u002Flocal\u002Fbin\u002Fcmake\n  ```\n- 升级gcc\n\n  ```bash\n  # 下载gcc\n  wget http:\u002F\u002Fftp.gnu.org\u002Fgnu\u002Fgcc\u002Fgcc-11.2.0\u002Fgcc-11.2.0.tar.gz\n\n  yum -y install gmp-devel\n  yum -y install mpfr-devel\n  yum -y install libmpc-devel\n\n  tar -zxvf gcc-11.2.0.tar.gz\n  cd gcc-11.2.0\n\n  # 下载四个依赖包\n  .\u002Fcontrib\u002Fdownload_prerequisites\n\n  # 编译\n  mkdir build\n  cd build\u002F\n\n  ..\u002Fconfigure -enable-checking=release -enable-languages=c,c++ -disable-multilib\n  make -j16\n  make install\n\n  # 卸载旧版本\n  yum -y remove gcc g++\n\n  # 配置新版本全局可用\n  ln -s \u002Fusr\u002Flocal\u002Fbin\u002Fgcc \u002Fusr\u002Fbin\u002Fgcc\n  ln -s \u002Fusr\u002Flocal\u002Fbin\u002Fg++ \u002Fusr\u002Fbin\u002Fg++\n  ln -s \u002Fusr\u002Flocal\u002Fbin\u002Fc++ \u002Fusr\u002Fbin\u002Fc++\n  #  更新动态库\n  # 查看当前的动态库\n  strings \u002Fusr\u002Flib64\u002Flibstdc++.so.6 | grep CXXABI\n  # 更新\n  rm -f \u002Fusr\u002Flib64\u002Flibstdc++.so.6\n  ln -s \u002Fusr\u002Flocal\u002Flib64\u002Flibstdc++.so.6.0.29 \u002Fusr\u002Flib64\u002Flibstdc++.so.6\n  # 查看更新后的动态库\n  strings \u002Fusr\u002Flib64\u002Flibstdc++.so.6 | grep CXXABI\n\n  ```\n\n### 开始安装\n\n```bash\nyum install -y ncurses-devel\ntar zxvf mysql-boost-8.0.36.tar.gz\n\ncd mysql-8.0.36\u002F\ncd build\u002F\n\ncmake \\\n-DCMAKE_INSTALL_PREFIX=\u002Fusr\u002Flocal\u002Fmysql \\\n-DMYSQL_DATADIR=\u002Fusr\u002Flocal\u002Fmysql\u002Fdata \\\n-DSYSCONFDIR=\u002Fetc \\\n-DWITH_MYISAM_STORAGE_ENGINE=1 \\\n-DWITH_INNOBASE_STORAGE_ENGINE=1 \\\n-DWITH_MEMORY_STORAGE_ENGINE=1 \\\n-DWITH_READLINE=1 \\\n-DMYSQL_UNIX_ADDR=\u002Fvar\u002Flib\u002Fmysql\u002Fmysql.sock \\\n-DMYSQL_TCP_PORT=3306 \\\n-DENABLED_LOCAL_INFILE=1 \\\n-DWITH_PARTITION_STORAGE_ENGINE=1 \\\n-DEXTRA_CHARSETS=all \\\n-DDEFAULT_CHARSET=utf8 \\\n-DDEFAULT_COLLATION=utf8_general_ci\nmake && make install\ngroupadd mysql\nuseradd -g mysql mysql\nchown -R mysql:mysql \u002Fusr\u002Flocal\u002Fmysql\ncd \u002Fusr\u002Flocal\u002Fmysql\n mysqld --initialize --user=mysql\ncp support-files\u002Fmysql.server \u002Fetc\u002Finit.d\u002Fmysql\n\nchkconfig mysql on\nservice mysql start\nln -s \u002Fusr\u002Flocal\u002Fmysql\u002Fbin\u002Fmysql \u002Fusr\u002Fbin\u002F\n\n```\n",[97,103,110],{"id":8,"created_at":98,"updated_at":98,"code":18,"author_id":8,"title":99,"slug":100,"cover_theme_key":11,"visibility":12,"status":13,"sort_order":8,"favorite_count":14,"view_count":101,"author":102},"2023-12-27T13:08:44.239+08:00","ElasticSearch","elasticsearch-1",6,{"id":8,"created_at":16,"updated_at":17,"code":18,"username":19,"display_name":20,"role":21,"avatar_url":22,"is_active":23,"is_banned":24,"follower_count":14,"following_count":25,"last_login_at":26},{"id":104,"created_at":105,"updated_at":105,"code":106,"author_id":8,"title":107,"slug":108,"cover_theme_key":11,"visibility":12,"status":13,"sort_order":104,"favorite_count":14,"view_count":25,"author":109},2,"2023-12-30T11:23:15.697+08:00","yj6y7X92","分布式事务Seata","分布式事务seata-2",{"id":8,"created_at":16,"updated_at":17,"code":18,"username":19,"display_name":20,"role":21,"avatar_url":22,"is_active":23,"is_banned":24,"follower_count":14,"following_count":25,"last_login_at":26},{"id":25,"created_at":111,"updated_at":111,"code":112,"author_id":8,"title":113,"slug":114,"cover_theme_key":11,"visibility":12,"status":13,"sort_order":25,"favorite_count":14,"view_count":25,"author":115},"2024-01-06T03:24:09.349+08:00","r2Xr2XOR","Electron Forge","electron-forge-3",{"id":8,"created_at":16,"updated_at":17,"code":18,"username":19,"display_name":20,"role":21,"avatar_url":22,"is_active":23,"is_banned":24,"follower_count":14,"following_count":25,"last_login_at":26}]