CentOS7的yum源中默認好像是沒有mysql的。爲了解決這個問題,我們要先下載mysql的repo源。
- 下載mysql的repo源
1
$ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
2. 安裝mysql-community-release-el7-5.noarch.rpm包
1
$ sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm
安裝這個包後,會獲得兩個mysql的yum repo源:/etc/yum.repos.d/mysql-community.repo,/etc/yum.repos.d/mysql-community-source.repo。
- 安裝mysql
1
$ sudo yum install mysql-server
根據步驟安裝就可以了,不過安裝完成後,沒有密碼,需要重置密碼。
- 重置密碼
修改MySQL的登錄設置:
vim /etc/my.cnf
在[mysqld]的段中加上一句:skip-grant-tables
例如:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
skip-grant-tables
保存並且退出vi。
重新啓動mysqld
service mysqld restart
Stopping MySQL: [ OK ]
Starting MySQL: [ OK ]
登錄並修改MySQL的root密碼
mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3 to server version: 3.23.56
Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.
mysql> USE mysql ;
Database changed
mysql> UPDATE user SET Password = password ( ‘new-password’ ) WHERE User = ‘root’ ;
Query OK, 0 rows affected (0.00 sec)
Rows matched: 2 Changed: 0 Warnings: 0
mysql> flush privileges ;
Query OK, 0 rows affected (0.01 sec)
mysql> quit
將MySQL的登錄設置修改回來
vim /etc/my.cnf
將剛纔在[mysqld]的段中加上的skip-grant-tables刪除
保存並且退出vim
重新啓動mysqld
service mysqld restart
Stopping MySQL: [ OK ]
Starting MySQL: [ OK ]
方式二:
step1:卸載
[root@codecycle ~]# rpm -qa | grep mysql
mysql-5.1.73-3.el6_5.x86_64
mysql-libs-5.1.73-3.el6_5.x86_64
mysql-server-5.1.73-3.el6_5.x86_64
[root@codecycle ~]# rpm -e –nodeps mysql-5.1.73-3.el6_5.x86_64 mysql-libs-5.1.73-3.el6_5.x86_64 mysql-server-5.1.73-3.el6_5.x86_64
step2: 下載yum包,導入本地
[root@codecycle ~]# yum localinstall /usr/local/src/mysql-community-release-el6-5.noarch.rpm
step3:安裝
[root@codecycle ~]# yum install mysql-community-server
step4:啓動
[root@codecycle ~]# service mysqld start
step5:開機啓動
[root@codecycle ~]# chkconfig –list | grep mysqld
mysqld 0:off 1:off 2:off 3:off 4:off 5:off 6:off
[root@codecycle ~]# chkconfig mysqld on
step6:設置本地登錄密碼
[root@codecycle ~]# mysqladmin -uroot -p password 123456
step7:設置遠程登錄密碼
[root@codecycle ~]# mysql -uroot -p123456
mysql> grant all privileges on . to root@’%’ identified by ‘qaz123wsx’ with grant option;
mysql> flush privileges;