centos 7 安裝mysql
1.安裝前的準備
下載地址
https://www.mysql.com/downloads/
點擊下載mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
1.1 準備mysql的安裝包
mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
1.2 放到linux系統(tǒng)上:
命令:
#放到在/usr/local目錄下
cd /usr/local
#上傳命令選擇安裝包
rz
#解壓縮包
tar -zxvf mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
#給包重命名為mysql
mv mysql-5.7.21-linux-glibc2.12-x86_64 mysql
#查看mysql目錄下有什么東西
[root@bogon mysql]# ll
總用量 626796
drwxr-xr-x. 2 root root 4096 1月 2 01:28 bin
-rw-r--r--. 1 7161 31415 17987 12月 28 2017 COPYING
drwxr-xr-x. 2 root root 55 1月 2 01:28 docs
drwxr-xr-x. 3 root root 4096 1月 2 01:28 include
drwxr-xr-x. 5 root root 229 1月 2 01:28 lib
drwxr-xr-x. 4 root root 30 1月 2 01:28 man
-rw-r--r--. 1 root root 641798603 1月 1 09:22 mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
-rw-r--r--. 1 7161 31415 2478 12月 28 2017 README
drwxr-xr-x. 28 root root 4096 1月 2 01:28 share
drwxr-xr-x. 2 root root 90 1月 2 01:28 support-files
2.配置環(huán)境
#查詢是否有自帶的Mariadb數(shù)據(jù)庫
[root@hdp265dnsnfs ~]# rpm -qa|grep mariadb
mariadb-libs-5.5.44-2.el7.centos.x86_64
#卸載系統(tǒng)自帶的Mariadb
[root@hdp265dnsnfs ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64
#檢查mysql是否存在
[root@hdp265dnsnfs ~]# rpm -qa | grep mysql
#檢查mysql組和用戶是否存在图甜,如無創(chuàng)建
[root@hdp265dnsnfs ~]# cat /etc/group | grep mysql
[root@hdp265dnsnfs ~]# cat /etc/passwd | grep mysql
#創(chuàng)建mysql用戶組
[root@bogon selinux]# groupadd mysql
[root@bogon selinux]# useradd -g mysql mysql
#制定password 為111111
[root@bogon selinux]# passwd mysql
更改用戶 mysql 的密碼 躬充。
新的 密碼:
無效的密碼: 密碼是一個回文
重新輸入新的 密碼:
passwd:所有的身份驗證令牌已經(jīng)成功更新。
#更改所屬的組和用戶
[root@bogon local]# chown -R mysql mysql
[root@bogon local]# chgrp -R mysql mysql
#創(chuàng)建data目錄
[root@bogon mysql]# mkdir data
[root@bogon mysql]# chown -R mysql:mysql data
這個版本的數(shù)據(jù)庫是沒有my.cnf需要創(chuàng)建my.cnf
[root@bogon etc]# touch my.cnf
[root@bogon etc]# vim my.cnf
[root@bogon etc]# cat my.cnf
#查看配置my.cnf
[mysql]
# 設(shè)置mysql客戶端默認字符集
default-character-set=utf8
[mysqld]
skip-name-resolve
#設(shè)置3306端口
port = 3306
# 設(shè)置mysql的安裝目錄
basedir=/usr/local/mysql
# 設(shè)置mysql數(shù)據(jù)庫的數(shù)據(jù)的存放目錄
datadir=/usr/local/mysql/data
# 允許最大連接數(shù)
max_connections=200
# 服務端使用的字符集默認為8比特編碼的latin1字符集
character-set-server=utf8
# 創(chuàng)建新表時將使用的默認存儲引擎
default-storage-engine=INNODB
lower_case_table_names=1
max_allowed_packet=16M
#修改config配置
vim /etc/selinux/config
初始化
#cd到/usr/local/mysql/bin目錄缅阳,執(zhí)行如下命令
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
3.測試mysql是否能啟動******
1. cd到/usr/local/mysql/support-files/
編輯mysql.server带迟,語法為: vim mysql.server
如圖:
2. 修改basedir和datadir路徑
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
如圖:
3. 保存并退出音羞,如果使用x命令無法保存退出,可以使用wq!保存并強制退出
保存并退出步驟:
先按鍵盤最左上角的Esc鍵仓犬,
然后按住shift鍵嗅绰,并且輸入:號
最后輸入wq!
回車保存并退出
如圖:
4. 啟動測試
./mysql.server start
如圖:
如果你看到Starting Mysql SUCCESS!, 說明我們已經(jīng)成功安裝了MySql,因為我們啟動成功了,
如果走到了這步成功搀继,繼續(xù)往下參考窘面,否則需要仔細檢查下是什么地方出問題了。
注意:安裝僅供參考叽躯,如有毛病财边,還請多包容,每個人的系統(tǒng)或環(huán)境有區(qū)別点骑。
5.創(chuàng)建軟連接******
ln -s /usr/local/mysql/bin/mysql /usr/bin
如圖:
軟連接有啥用酣难,說白了,就是給linux系統(tǒng)加上mysql這個命令黑滴,linux系統(tǒng)命令放在/usr/bin下憨募,
與在windows中命令存在C:\Windows\System32目錄下一樣,windows上命令都是xxx.exe形式袁辈,
比如telnet.exe菜谣,如果沒有這個文件,windows命令窗口使用的時候就會提示命令telnet命令不存在吵瞻,
這個地方操作葛菇,就是為了后面使用mysql命令的時候,能夠有這個命令做鋪墊橡羞。
6創(chuàng)建mysql配置文件******
1. my.cnf配置
首先眯停,如果/etc/my.cnf存在,直接刪掉my.cnf
然后卿泽,mv /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
編輯莺债,vim /etc/my.cnf
如圖:
在my.cnf中滋觉,找到[mysqld],在此下增加如下配置:
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
character_set_server=utf8
[client]
default-character-set=utf8
同時刪掉或注釋掉my.cnf文件中的內(nèi)容:
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
如圖:
最后保存并退出齐邦。
2. mysqld配置
2.1. 拷貝啟動文件到/etc/init.d/下并重命令為mysqld
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
2.2. 增加執(zhí)行權(quán)限
chmod 755 /etc/init.d/mysqld
2.3. 檢查自啟動項列表中沒有mysqld
chkconfig --list mysqld
2.4. 如果沒有就添加mysqld
chkconfig --add mysqld
2.5. 設(shè)置開機啟動
chkconfig mysqld on
2.6. 啟動測試
service mysqld start
如圖:
說明我們的配置文件成功椎侠,mysql徹底安裝完成。
7.重置密碼******
1. 修改配置文件my.cnf
vim /etc/my.cnf
2. 找到[mysqld]在之后添加
skip-grant-tables
保存退出
3. 重啟mysql服務
service mysqld restart
重啟如圖:
4. 直接登陸mysql而不需要密碼
mysql -u root -p (一路直接回車)
進入后的效果:
5. 在mysql中輸入
update mysql.user set authentication_string=password('123456') where user='root';
6. 刷新權(quán)限
flush privileges
如圖:
7. 退出mysql措拇,到my.cnf中把開始添加的skip-grant-tables注釋掉或刪掉
8. 重啟mysql服務
service mysqld restart
9. 登錄
mysql -u root -p
輸入密碼我纪,即可。
如圖:
完成以上工作后丐吓,我們的mysql算是裝完了浅悉,但是,想讓外界可以通過工具連接還需要設(shè)置券犁。
8.工具連接3306端口數(shù)據(jù)庫******
1. 登陸mysql
mysql -u root -p
2. 修改mysql庫的user表术健,將host項,從localhost改為%粘衬。
%這里表示的是允許任意host訪問荞估,如果只允許某一個ip訪問,則可改為相應的ip稚新。
注:以下命令建議手動輸入勘伺,避免不必要的麻煩。
3. use mysql;
4. SET PASSWORD = PASSWORD('123456')褂删;
5. update user set host = '%' where user = 'root';
6. select host, user from user;
7. flush privileges;
如圖:
8. 防火墻開放3306端口
第一種方法:如果你是用的自帶的防火墻使用如下命令增加防火墻端口:
root@bogon support-files]# firewall-cmd --add-port=3306/tcp
Warning: ALREADY_ENABLED: '3306:tcp' already in 'public'
success
[root@bogon support-files]# firewall-cmd --list-ports;
80/tcp 22/tcp 3306/tcp
第二種:如果你安裝了iptables.使用下面的方法娇昙。
編輯iptables文件:
在文件中增加3306端口,保存并退出笤妙,比如:
重啟iptables:
語法: service iptables restart
如圖:
9. 讓我們用工具連接試試
輸入你數(shù)據(jù)庫所在服務ip, 數(shù)據(jù)庫密碼,上面設(shè)置的密碼是123456噪裕,根據(jù)你設(shè)置而定蹲盘。
一路確定,看到默認效果:
通過工具膳音,任意操作數(shù)據(jù)庫召衔。
到此,mysql安裝完成祭陷。
以上安裝僅供參考苍凛,不恰當?shù)牡胤剑埗嘀附瘫荆喟?/p>