阿里雲Centos7上安裝MySQL教程
阿里雲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
-
安裝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。
在Centos中匯入sql檔案的方法
利用mysql -u root -p進入mysql資料庫
對於檔案的匯入,在Centos下里面的是首先要新建一個和檔案相同名字的資料庫。
例如:
mysql>create database Student;
然後輸入指令:
mysql> use Student;
如果沒有錯誤的話,說明進入了你新建的資料庫中。
然後把先設定編碼:
mysql>set names utf8;
接著輸入你所匯入到Centos下的資料庫文Student.sql檔案的位置
例如:
mysql>source /usr/database.sql;
接著你會看到螢幕上很多查詢語句的成功,然後就OK了。