mysql-5.7.30安裝


1、由於在線安裝受制於網絡環境,所以選擇tar包編譯安裝。

      首先去mysql鏡像站下載mysql-5.7.30-linux-glibc2.5-x86_64.tar.gz

2、上傳到linux服務器

3、檢查你所用的Linux下有沒有安裝過mysql,沒有卸載干凈

rpm -qa|grep -i mysql

如果存在,則需要先卸載掉,不然會出現覆蓋錯誤。

yum remove  mysql mysql-server mysql-libs mysql-server;

find / -name mysql 將找到的相關東西delete掉;

rpm -qa|grep mysql(查詢出來的東東yum remove掉)

4、創建mysql的用戶組/用戶, data目錄及其用戶目錄

userdel mysql                                           # 刪除用戶

groupdel mysql                                          # 刪除用戶組名

mkdir /usr/local/mysql                                  # mysql的默認安裝路徑,建議不要更換,如果更換后續需要更新配置

mkdir /usr/local/mysql/data                             # 在mysql文件夾下創建文件夾data

groupadd mysql                                          # 創建一個名為mysql的用戶組      

useradd -g mysql -d /usr/local/mysql mysql              # 在用戶組下創建用戶

5、解壓縮並轉移

# tar -xzvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz             # 解壓文件

# cd mysql-5.7.17-linux-glibc2.5-x86_64                           # 進入

# mv * /usr/local/mysql/

   

6、編譯安裝

cd /usr/local/mysql/

 

./bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize

https://static.oschina.net/uploads/space/2017/0412/113503_nmXK_196698.png

記錄上面成功安裝后的密碼,如上:hIE;k,h8gd#q,后續用到!



7、啟動mysql服務

啟動之前最好先配置/etc/my.cnf,步驟 8

./support-files/mysql.server start

如啟動報錯 Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
需執行如下:ln -s /usr/local/mysql/mysql.sock /tmp/mysql.sock

目的是在/usr/local/mysql/和/tmp/mysql.sock之間做一個軟連接




8、配置mysql

#進入mysql的安裝目錄支持文件目錄

cd /usr/local/mysql//support-files

 
#設置編碼,可按需修改新的配置文件選項, 不修改配置選項, mysql則按默認配置參數運行.

#如下是我修改配置文件/etc/my.cnf, 設置編碼為utf8以防亂碼

vim /etc/my.cnf

[mysqld]
basedir = /usr/local/mysql

datadir = /usr/local/mysql/data
#表名不區分大小寫,如果是部署主從同步,一定要加上這句
lower_case_table_names=1

character_set_server=utf8

init_connect='SET NAMES utf8'


[client]

default-character-set=utf8

此處需要注釋掉##sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

否則后續登陸時會報異常:

mysql: [ERROR] unknown variable 'sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES'

9、配置mysql服務開機自動啟動

# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld      # 拷貝啟動文件到/etc/init.d/下並重命令為mysqld

# chmod 755 /etc/init.d/mysqld                                      # 增加執行權限

# chkconfig --list mysqld                                           # 檢查自啟動項列表中沒有mysqld這個,

# chkconfig --add mysqld                                            # 如果沒有就添加mysqld:

# chkconfig mysqld on                                               # 用這個命令設置開機啟動:

10、mysql服務的啟動/重啟/停止

# service mysqld start                                               # 啟動服務

# service mysqld restart                                             # 重啟服務

# service mysqld stop                                                # 停止服務

11、修改mysql用戶root的密碼

mysql -u root -p

輸入上邊自動生成的密碼,進入mysql環境

-bash : mysql :command not found

原因:這是由於系統默認會查找/usr/bin下的命令,如果這個命令不在這個目錄下,當然會找不到命令,我們需要做的就是映射一個鏈接到/usr/bin目錄下,相當於建立一個鏈接文件。


首先得知道mysql命令完整路徑,比如我的Linux的mysql的路徑是:/usr/local/mysql/bin/mysql,我們則可以這樣執行命令:

 /usr/local/mysql/bin/mysql  -uroot這樣執行命令,或者創建一個軟鏈接

 ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql

 

mysql> SET PASSWORD = PASSWORD('123456');             # PASSWORD()里面的123456 是設置的新密碼,可以設置成你的密碼

Query OK, 0 rows affected, 1 warning (0.00 sec)

Rows matched: 2 Changed: 0 Warnings: 1

mysql> ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;

Query OK, 0 rows affected, 1 warning (0.00 sec)

Rows matched: 2 Changed: 0 Warnings: 1

mysql> flush privileges;

Query OK, 0 rows affected, 1 warning (0.00 sec)

Rows matched: 2 Changed: 0 Warnings: 1

12mysql遠程授權

mysql> grant all privileges on *.* to 'root'@'%' identified by '123456';

如果不設置的話,不能從客戶端遠程連接mysql

 

原文鏈接:https://blog.csdn.net/weixin_38281964/article/details/82016431


免責聲明!

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



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