编译MySQL源码需要以下步骤:
1、安装依赖库和工具
在编译MySQL之前,需要确保已经安装了必要的依赖库和工具,以下是一些常见的依赖库和工具:
C++编译器(如GCC)
make工具
autoconf工具
automake工具
libtool工具
bison工具
ncurses库
zlib库
openssl库
cmake(可选,用于Windows平台)
对于Debian/Ubuntu系统,可以使用以下命令安装这些依赖库和工具:
sudo aptget install buildessential cmake bison flex libncurses5dev libncursesw5dev libreadlinedev libssldev libzdev
对于CentOS/RHEL系统,可以使用以下命令安装这些依赖库和工具:
sudo yum groupinstall "Development Tools" sudo yum install ncursesdevel openssldevel
2、下载MySQL源码
从MySQL官方网站下载源码包,或者使用Git克隆仓库,下载5.7.35版本的源码:
wget https://dev.mysql.com/get/Downloads/MySQL5.7/mysql5.7.35.tar.gz tar xvf mysql5.7.35.tar.gz cd mysql5.7.35
3、配置编译选项
运行cmake
命令来生成Makefile,你可以通过指定不同的选项来自定义编译过程。
mkdir build cd build cmake .. DCMAKE_INSTALL_PREFIX=/usr/local/mysql DWITH_BOOST=boost DWITH_INNOBASE_STORAGE_ENGINE=1 DWITH_PARTITION_STORAGE_ENGINE=1 DWITH_FEDERATED_STORAGE_ENGINE=1 DWITH_BLACKHOLE_STORAGE_ENGINE=1 DWITH_MYISAM_STORAGE_ENGINE=1 DENABLED_LOCAL_INFILE=1 DENABLE_DTRACE=0 DDEFAULT_CHARSET=utf8mb4 DDEFAULT_COLLATION=utf8mb4_general_ci DWITH_EMBEDDED_SERVER=OFF
这里有一些常用的选项:
CMAKE_INSTALL_PREFIX
: 指定安装路径,默认为/usr/local/mysql
。
WITH_BOOST
: 启用Boost支持。
WITH_INNOBASE_STORAGE_ENGINE
: 启用InnoDB存储引擎。
WITH_PARTITION_STORAGE_ENGINE
: 启用分区存储引擎。
WITH_FEDERATED_STORAGE_ENGINE
: 启用Federated存储引擎。
WITH_BLACKHOLE_STORAGE_ENGINE
: 启用Blackhole存储引擎。
WITH_MYISAM_STORAGE_ENGINE
: 启用MyISAM存储引擎。
ENABLED_LOCAL_INFILE
: 允许LOAD DATA LOCAL INFILE命令。
ENABLE_DTRACE
: 启用DTrace支持。
DEFAULT_CHARSET
: 设置默认字符集,推荐设置为utf8mb4
。
DEFAULT_COLLATION
: 设置默认排序规则,推荐设置为utf8mb4_general_ci
。
WITH_EMBEDDED_SERVER
: 禁用嵌入式服务器。
4、编译源码
运行make
命令来编译源码:
make
5、安装MySQL
运行make install
命令来安装MySQL:
sudo make install
6、初始化数据库
安装完成后,需要初始化数据库,创建一个名为mysql
的系统用户和组:
sudo groupadd mysql sudo useradd r g mysql s /bin/false mysql
更改MySQL安装目录的所有权:
sudo chown R mysql:mysql /usr/local/mysql
初始化数据库:
cd /usr/local/mysql sudo bin/mysqld initialize user=mysql
这将生成一个临时密码,记下这个密码,稍后需要用到。
7、启动MySQL服务
使用以下命令启动MySQL服务:
sudo bin/mysqld_safe user=mysql &
8、登录MySQL并修改密码
使用刚才生成的临时密码登录MySQL:
bin/mysql u root p
输入临时密码后,进入MySQL命令行界面,修改root用户的密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'your_new_password';
将your_new_password
替换为你自己的新密码。
至此,MySQL源码编译安装完成。
小伙伴们,上文介绍了“mysql 源码编译”的内容,你了解清楚吗?希望对你有所帮助,任何问题可以给我留言,让我们下期再见吧。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1174596.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复