fedora19以后好像取消了對mysql的支持,看其他人好像說是用的mariadb的。centos里用yum安裝的方式,放到fedora中不能用,所以找了很多資料,嘗試了一種可行的辦法。
在Fedora 24/23/22,安裝CentOS的MySQL數據庫5.7.13 7.2 / 6.8 / 5.11,紅帽(RHEL)7.2 / 6.8 / 5.11
1.更改root用戶
Shell
0
1
2
3
4
|
su -
## OR ##
sudo -i
|
2.安裝MySQL YUM資源庫
Fedora的
Shell
0
1
2
3
4
5
6
7
8
9
|
## Fedora 24 ##
dnf install https://dev.mysql.com/get/mysql57-community-release-fc24-8.noarch.rpm
## Fedora 23 ##
dnf install https://dev.mysql.com/get/mysql57-community-release-fc23-8.noarch.rpm
## Fedora 22 ##
dnf install https://dev.mysql.com/get/mysql57-community-release-fc22-8.noarch.rpm
|
CentOS的和Red Hat(RHEL)
Shell
0
1
2
3
4
5
6
7
8
9
|
## CentOS 7 and Red Hat (RHEL) 7 ##
yum localinstall https://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
## CentOS 6 and Red Hat (RHEL) 6 ##
yum localinstall https://dev.mysql.com/get/mysql57-community-release-el6-8.noarch.rpm
## CentOS 5 and Red Hat (RHEL) 5 ##
yum localinstall https://dev.mysql.com/get/mysql57-community-release-el5-7.noarch.rpm
|
3.更新或安裝MySQL 5.7.13
Fedora的24/23/22
Shell
0
1
2
|
dnf install mysql-community-server
|
Fedora的21,CentOS的7.2 / 6.8 / 5.11和Red Hat(RHEL)7.2 / 6.8 / 5.11
Shell
0
1
2
|
yum install mysql-community-server
|
在啟動4.啟動MySQL服務器和MySQL的自動啟動
Fedora的24/23/22和CentOS 7.2
Shell
0
1
2
3
4
|
systemctl start mysqld.service ## use restart after update
systemctl enable mysqld.service
|
CentOS的6.8 / 5.11和Red Hat(RHEL)6.8 / 5.11
Shell
0
1
2
3
4
5
6
|
/etc/init.d/mysql start ## use restart after update
## OR ##
service mysql start ## use restart after update
chkconfig --levels 235 mysqld on
|
好像是由於mysql特性的問題,所以在fedora22之上,mysql5.x安裝的時候是不問你設置你要登錄時候用的密碼的,但是 mysql 登陸的時候,他又要密碼。
解決方法:
修改MySQL的登錄設置:
# vi /etc/my.cnf
在[mysqld]的段中加上一句:skip-grant-tables
例如:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
skip-grant-tables
保存並且退出vi。
# vi /etc/my.cnf
在[mysqld]的段中加上一句:skip-grant-tables
例如:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
skip-grant-tables
保存並且退出vi。
重啟mysql:
service mysqld stop
service mysqld start
新安裝的MySQL5.7,登錄時提示密碼錯誤,安裝的時候並沒有更改密碼,后來通過免密碼登錄的方式更改密碼,輸入update mysql.user set password=password('root') where user='root'時提示ERROR 1054 (42S22): Unknown column 'password' in 'field list',原來是mysql數據庫下已經沒有password這個字段了,password字段改成了
authentication_string
所以更改語句替換為update mysql.user set authentication_string=password('root') where user='root'