Linux中MySQL5.6編譯安裝與MySQL5.7二進制安裝步驟


首先,介紹一下MySQL的幾種安裝方式

1、RPM、Yum 的安裝方式:安裝方便、安裝速度快,無法定制

2、二進制:不需要安裝,解壓即可使用,不能定制功能

3、編譯安裝:可定制,安裝慢。

     編譯安裝中需要注意的是 5.5之前的編譯方式是:./configure  make && make install 

     而5.5之后則使用:cmake

企業中使用的安裝方式:先編譯,然后制作rpm,制作yum庫,然后yum安裝。

簡單、速度快、可定制,比較復雜 制作時間長

MySQL的獲取方式

軟件包盡量去官方網站下載

官方地址:https://www.mysql.com/

不同的安裝方式下載不同的包

Linux-Generic 代表的是二進制包

編譯安裝的話下載Source Code,表示源碼包

博主的安裝方式是編譯安裝方式,而二進制安裝方式,就是將下載的二進制包解壓后,即可

MySQL5.6安裝與5.7安裝過程中有哪些差異

5.6與5.7的編譯安裝差異主要是初始化不同

5.7初始化完成后,會自動設置一個初始密碼,而5.6沒有

MySQL5.6編譯安裝部署

1、安裝依賴包

依賴包

yum install -y ncurses-devel libaio-devel

安裝cmake

yum install cmake -y
安裝依賴

2、創建管理用戶

useradd -s /sbin/nologin -M -u 999 mysql

最好指定好uid,對管理數據庫有好處

3、解壓安裝

找到下載的mysql包所在路徑,然后進行解壓,軟件包盡量去官方網站下載

tar zxf mysql-5.6.36.tar.gz

解壓完成后,使用 cd 進入解壓好的mysql目錄中,進行cmake

cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.36 \
-DMYSQL_DATADIR=/application/mysql-5.6.36/data \
-DMYSQL_UNIX_ADDR=/application/mysql-5.6.36/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITH_ZLIB=bundled \
-DWITH_SSL=bundled \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLE_DOWNLOADS=1 \
-DWITH_DEBUG=0
cmake

cmake安裝過程做了什么呢?

(1)定制功能:存儲引擎、字符集、壓縮等

(2)定制安裝位置、數據存放位置、文件位置

4、進行編譯安裝

make && make install 

這兩步完成后然后創建軟連接,這樣在使用mysql的時候方便

ln -s /application/mysql-5.6.36/ /application/mysql

5、初始化及配置數據庫

這步做的主要是指定mysql的管理用戶,程序路徑,數據存儲路徑

如果不設置管理用戶為mysql會導致啟動報錯

對於mysql的 my.cnf 配置文件參數優化與解釋請參照:http://www.cnblogs.com/lyq863987322/p/8074749.html

\cp /application/mysql/support-files/my*.cnf /etc/my.cnf     ### 將配置文件復制到/etc下,可以不用復制

/application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data --user=mysql 

6、設置mysql目錄權限

chown -R mysql.mysql /application/mysql/

將啟動文件復制到/etc/init.d下,方便啟動關閉管理,並啟動

cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod 700 /etc/init.d/mysqld
/etc/init.d/mysqld start

7、設置命令環境變量

這一步就是對於博主這種比較懶得人有好處了,以后在登陸的時候就不用在將mysql的詳細路徑打一遍了

echo 'PATH=/application/mysql/bin/:$PATH' >>/etc/profile   --- 將mysql命令路徑添加到環境變量配置文件
tail -1 /etc/profile    ----- 查看添加結果
source /etc/profile     ----- 有結果了,執行這一步讓環境變量生效
echo $PATH           --- 不放心可以再檢查一下生效了沒有
mysql ----- 這樣就可以直接登陸了

這樣mysql5.6就已經安裝完成了,默認的登陸是沒有密碼

設置/修改密碼:

mysqladmin -u root password '123456'

mysql -uroot -p123456

MySQL5.7二進制安裝部署

1、解壓mysql二進制包

tar xf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

2、將解壓完的mysql目錄移動到程序目錄(自己設置放哪)

並且設置軟連接

mv mysql-5.7.17-linux-glibc2.5-x86_64 /application/mysql-5.7.17
ln -s /application/mysql-5.7.17 /application/mysql

3、創建管理用戶,並授權

useradd -s /sbin/nologin -M -u 999 mysql
chown -R mysql.mysql /application/mysql-5.7.17

4、初始化配置數據庫

/application/mysql-5.7.17/bin/mysqld --initialize --user=mysql --basedir=/application/mysql-5.7.17 --datadir=/application/mysql-5.7.17/data

執行初始化的輸出信息:最后一行有初始密碼,一定要先記住

2017-12-20T08:08:00.604818Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2017-12-20T08:08:03.828187Z 0 [Warning] InnoDB: New log files created, LSN=45790
2017-12-20T08:08:04.164378Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2017-12-20T08:08:04.389472Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: e7a07703-e55c-11e7-b24e-000c29c5641d.
2017-12-20T08:08:04.391108Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2017-12-20T08:08:04.827938Z 1 [Note] A temporary password is generated for root@localhost: *:vQq%O:E6dD

5、拷貝配置文件和啟動文件

對於mysql的 my.cnf 配置文件參數優化與解釋請參照:http://www.cnblogs.com/lyq863987322/p/8074749.html

cp /application/mysql-5.7.17/support-files/my-default.cnf /etc/my.cnf

cp /application/mysql-5.7.17/support-files/mysql.server /etc/init.d/mysqld

6、修改啟動文件內容

因為啟動文件中指定的mysql程序路徑與安裝路徑不同,所以需要改過來

sed 's#/usr/local#/application#g' /application/mysql-5.7.17/bin/mysqld_safe /etc/init.d/mysqld -i

7、配置環境變量

echo 'PATH=/application/mysql/bin/:$PATH' >>/etc/profile
tail -1 /etc/profile
source /etc/profile
echo $PATH

8、安裝完成修改密碼登陸

[root@baba tools]# mysqladmin -uroot -p password '123456'
Enter password: 
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.

[root@baba tools]# mysql -uroot -p123456
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.7.17 MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

安裝完成

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM