Linux下源码编译Mysql5.7

Posted Mr-Qiang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux下源码编译Mysql5.7相关的知识,希望对你有一定的参考价值。

1.安装依赖包

yum -y install gcc-c++ ncurses-devel cmake make perl gcc autoconf automake zlib libxml libgcrypt libtool bison

2.下载源码包

3.安装

  • 解压
tar zxvf mysql-boost-5.7.24.tar.gz
cd mysql-boost-5.7.24
  • 编译、安装
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \\ #mysql安装目录
-DMYSQL_DATADIR=/usr/local/mysql/data \\ #数据库文件目录
-DSYSCONFDIR=/etc \\ #配置文件目录
-DMYSQL_USER=mysql \\ #运行mysql进行的用户,如果没有需要提前添加用户和用户组
-DDEFAULT_CHARSET=utf8 \\ #默认字符集
-DDEFAULT_COLLATION=utf8_general_ci \\ #默认校对规则
-DWITH_BOOST=boost  #boost库,带boost的源码包只需要这样即可,不带boost源码包需要指明boost目录
make
make install

4.配置

  • 初始数据库
#初始化以后会生成一个随机密码,需要自己保存一下
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
  • 配置开机启动荐
[root@MiWiFi-R3P-srv support-files]# pwd
/usr/local/mysql/support-files
[root@MiWiFi-R3P-srv support-files]# cp mysql.server /etc/init.d/mysql
#开户、关闭、重启
service mysql start
service mysql stop
service mysql restart
#创建软链方便命令行连接
cp /usr/local/mysql/bin/mysql /usr/bin/mysql
  • 遇到的问题
1.有可能会遇到在/etc下或者support-files目录下找不到my.cnf文件情况
从别的系统复制一份到/etc/my.cnf或自己的配置文件目录,配置文件复制过来后如果启动失败,多半是配置文件的问题,可以查看错误日志对应解决
2.登录mysql命令行后,无论打什么命令都报You must reset your password using ALTER USER statement before executing this statement.
这个问题就是默认密码有效时间已过需要修改密码:alter user user() identified by "123456";

以上是关于Linux下源码编译Mysql5.7的主要内容,如果未能解决你的问题,请参考以下文章

Linux精华篇—CentOS 7.4下源码编译构建LNMP架构

CentOS 6.6 下源码编译安装MySQL 5.7.5

开发人员学Linux:CentOS7编译安装MySQL5.17.8多实例及主从复制

源码编译并二进制安装MySQL5.7 3 二进制安装mariadb10.4

ubuntu编译安装mysql5.7

Linux 编译安装 Mysql5.7