centos 7 自帶mariadb源,如果要安裝mysql則需要卸載mariadb
#查看
rpm -qa | grep mariadb
#強制卸載
rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
------------------------
開始安裝
#安裝perl
yum install -y perl-Module-Install.noarch
#安裝mysql
rpm -ivh MySQL-server-5.6.27-1.linux_glibc2.5.x86_64.rpm --nosignature
rpm -ivh MySQL-client-5.6.27-1.linux_glibc2.5.x86_64.rpm
2.都安裝完畢後,使用如下命令查看當前mysql的狀態:
service mysql status
3.如果沒有運行,則使用如下命令啓動:
service mysql start
4.可以順便把啓動命令加入到linux的啓動項中,開機即啓動mysql服務,命令如下:
chkconfig --add mysql
chkconfig mysql on
使用命令chkconfig –list查看下,此操作都是root權限。
5.給mysql設置root密碼,使用如下命令:
mysql -u root -p
會提示輸入密碼,初始root密碼保存在'/root/.mysql_secret'文件中
切換root用戶打開.mysql_secret文件查看密碼
vi /root/.mysql_secret
接着輸入
mysql>SET PASSWORD = PASSWORD('123456');
退出後再用新密碼測試
mysql> quit;
# mysql -uroot -p
如果可以登錄成功,則表示mysql數據庫已經安裝成功。
cp my.cnf文件
PS:
1.如果出現客戶端無法連接:
具體步驟:登陸到mysql
首先 use mysql;
按照別人提供的方式update的時候,出現錯誤。
mysql> update user set host='%' where user = 'root';
問題2:ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY' ,嘗試連接任然不成功
然後查看了下數據庫的host信息如下:
mysql> select host from user where user = 'root';
+-----------------------+
| host |
+-----------------------+
| % |
| 127.0.0.1 |
| localhost.localdomain |
+-----------------------+
3 rows in set (0.00 sec)
host已經有了%這個值,所以直接運行命令:
mysql>flush privileges;
2.my.cnf配置文件
Linux下用rpm包安裝的MySQL是不會安裝/etc/my.cnf文件的,
至於爲什麼沒有這個文件而MySQL卻也能正常啓動和作用,
第一種說法,my.cnf只是MySQL啓動時的一個參數文件,可以沒有它,這時MySQL會用內置的默認參數啓動,
第二種說法,MySQL在啓動時自動使用/usr/share/mysql目錄下的my-medium.cnf文件,這種說法僅限於rpm包安裝的MySQL,
解決方法,只需要複製一個/usr/share/mysql目錄下的.cnf文件到/etc目錄,並改名爲my.cnf即可。