一、安装编译依赖mysql
sudo apt-get install make cmake gcc g++ bison libncurses5-dev build-essential
二、下载mysql5.7源码并解压sql
下载地址:https://dev.mysql.com/downloads/mysql/,在“select operating system”中选择“source code”,而后下载源码包便可,我下载的版本是mysql-5.7.21 。vim
tar -xzf mysql-5.7.21.tar.gz -C /usr/local
cd /usr/local/mysql-5.7.21
三、编译安装bash
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITHOUT_FEDERATED_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DMYSQL_USER=mysql -DCOMPILATION_COMMENT="lq-edition" -DENABLE_DTRACE=0 -DOPTIMIZER_TRACE=1 -DWITH_DEBUG=1
这一步可能会遇到boost1_59的问题,下载boost1_59_0源码编译安装便可,下载地址:https://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz,安装方法参照这篇文章(若是安装boost编译安装出现问题,则极可能是因为缺乏libbz2-dev形成的,先apt-get install libbz2-dev后再编译安装boost便可)。测试
编译ui
make
安装this
sudo make install
四、配置mysqles5
4.1 新建用户和用户组spa
sudo groupadd mysql sudo useradd -g mysql mysql
4.2 设置mysql安装目录的权限.net
cd /usr/local/mysql sudo chown -R mysql:mysql ./
4.3 初始化mysql,生成mysql临时密码
sudo bin/mysqld --initialize --user=mysql
这一步后会产生一个临时登陆密码,能够在下一步登陆时使用。
4.4 开启ssl功能
sudo bin/mysql_ssl_rsa_setup
4.5 测试启动mysql
sudo bin/mysqld_safe --user=mysql
4.6 启动mysql服务并更改密码
sudo support-files/mysql.server start sudo bin/mysql -u root -p SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpassword');
4.7 将mysql服务放在/etc/init.d目录下
sudo support-files/mysql.server stop
sudo cp support-files/mysql.server /etc/init.d/mysql.server
这样就能够使用命令 service mysql.server start 来启动mysql服务。
4.8 将mysql添加到环境变量
vim ~/.bashrc
在开头添加
export MYSQL_HOME=/usr/local/mysql
export PATH=$PATH:$MYSQL_HOME/bin
而后
source ~/.bashrc
使环境变量生效。
五、参考
一、https://blog.csdn.net/birdben/article/details/51712495
二、https://www.jianshu.com/p/117dab1b658d
三、https://blog.csdn.net/this_capslock/article/details/47170313