一、安裝編譯依賴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