阿裏雲Centos7上安裝MySQL教程
1 基本安裝過程
1.查看系統是否安裝了mysql軟件
# rpm -qa|grep -i mysql
2.將已經安裝過的軟件卸載掉。註意:這樣的卸載是不徹底,不過這裏夠用了
# yum remove ‘軟件名‘
3.CentOS 7
的yum
源中默認是沒有mysql
的。所以,為了解決這個問題我們首先下載安裝mysql
的repo
源。
# wget http://repo.mysql.com//mysql57-community-release-el7-7.noarch.rpm
4. 安裝mysql
的repo
源
# rpm -ivh mysql57-community-release-el7-7.noarch.rpm
安裝之後會獲得/etc/yum.repos.d/mysql-community.repo
和/etc/yum.repos.d/mysql-community-source.repo
兩個源,可以去相應的路徑下查看一下。
5.開始安裝
# yum install mysql-server # yum install mysql-devel # yum install mysql # rpm -qa | grep -i mysql
6.服務開關操作
#執行其中之一就可以 # service mysqld status 查看mysql當前的狀態 # systemctl status mysqld # service mysqld stop 停止mysql #systemctl stop mysqld # service mysqld restart 重啟mysql #systemctl restart mysqld # service mysqld start 啟動mysql # systemctl start mysqld
7.設置MySQL開機啟動
# systemctl enable mysqld
8.啟動MySQL服務進程
# systemctl start mysqld
或者
# service mysqld start
2 無法登錄問題解決
1.在/etc/my.cnf
文件中添加skip-grant-tables。這裏註意一下:我的skip-grant-tables放到了文件最後。
skip-grant-tables:的作用就是跳過了mysql的用戶驗證
然後直接輸入mysql,不需要帶任何登錄參數直接回車就可以登陸上數據庫;
2.重啟mysql
service mysqld restart,重啟之後我們直接輸入mysql即可進入mysql數據庫,因為我們已經跳過了mysql數據庫的用戶驗證。
進入數據庫之後執行下面的命令
mysql> use mysql; mysql> show tables; select user,authentication_string from user; update mysql.user set authentication_string=password(‘your password‘) where user=‘root‘; flush privileges; exit
3.恢復/etc/my.cnf文件
恢復/etc/my.cnf
,將skip-grant-tables
刪除或者註釋掉。
4.重啟mysql
,service mysqld restart
到此為止我們就解決了mysql安裝之後登錄不知道密碼的問題。
3 重置密碼問題
下面順便講解一下這個問題:
安裝完mysql 之後,登陸以後,不管運行任何命令,總是提示這個錯誤:
You must reset your password using ALTER USER statement before executing this statement
處理步驟為:依次執行下面三條代碼。
SET PASSWORD = PASSWORD(‘your new password‘); ALTER USER ‘root‘@‘localhost‘ PASSWORD EXPIRE NEVER; flush privileges;
這裏要註意的是your new password 必須包含數字,字母包含大小寫,標點符號。不然好像是不能通過的。
完成以上三步退出再登,使用新設置的密碼就行了,以上除了 your new password 需要修改成新密碼外,其他原樣輸入即可。
4.解決遠程客戶端無法連接MySQL數據庫
1.創建新的安全組規則,對外開放3306端口訪問授權
2.在本機登入mysql後,更改 “mysql” 數據庫裏的 “user” 表裏的 “host” 項,從”localhost”改稱‘%‘。
mysql -u root -p mysql>use mysql; mysql>select host,user from user; mysql>update user set host = ‘%‘ where user =‘root‘; mysql>flush privileges; mysql>select host,user from user;
第一句是以權限用戶root登錄
第二句:選擇mysql庫
第三句:查看mysql庫中的user表的host值(即可進行連接訪問的主機/IP名稱)
第四句:修改host值(以通配符%的內容增加主機/IP地址),當然也可以直接增加IP地址
第五句:刷新MySQL的系統權限相關表
第六句:再重新查看user表時,有修改
3.重起mysql服務即可完成。service mysqld restart。
詳細安裝教程:018-阿裏雲Centos 7上面安裝mysql教程
阿裏雲Centos7上安裝MySQL教程