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";

原文地址:https://www.cnblogs.com/zhangjianqiang/p/10150630.html