Linux 安裝MySQL有三種方法,下圖是三種方法比較: 這裡採用rpm 安裝MySQL ,CentOS 7安裝MySQL-5.7.17 . 一,下載安裝包 1,下載地址:http://www.mysql.com/downloads/ 2,選擇自己的版本 二、安裝準備 1.檢查系統中是否安裝了my ...
Linux 安裝MySQL有三種方法,下圖是三種方法比較:
這裡採用rpm 安裝MySQL ,CentOS 7安裝MySQL-5.7.17 .
一,下載安裝包
1,下載地址:http://www.mysql.com/downloads/
2,選擇自己的版本
二、安裝準備
1.檢查系統中是否安裝了mysql。
rpm -qa|grep mysql
註意:如果安裝了mysql,請先卸載mysql後再進行安裝,卸載教程在下文。
三、解壓安裝包
tar -vxf mysql-5.7.17-1.el7.x86_64.rpm-bundle.tar
四、安裝MySQL
1,安裝順序
rpm -ivh mysql-community-common-5.7.17-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.17-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.17-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.17-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-5.7.17-1.el7.x86_64.rpm
當你安裝第二個rpm時,會報出下列錯誤
出現依賴衝突,因為CentOS的預設資料庫已經不再是MySQL了,而是MariaDB,為什麼呢?
MariaDB資料庫管理系統是MySQL的一個分支,主要由開源社區在維護,採用GPL授權許可。開發這個分支的原因之一是:甲骨文公司收購了MySQL後,有將MySQL閉源的潛在風險,因此社區採用分支的方式來避開這個風險。MariaDB的目的是完全相容MySQL,包括API和命令行,使之能輕鬆成為MySQL的代替品。
查看當前安裝的mariadb包:
rpm -qa | grep mariadb
用命令刪除:
rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64
然後重新按順序安裝.
五、啟動MySQL服務
方法一:
啟動命令:service mysqld start (centos7:systemctl start mysqld.service)
查看初始管理員密碼; grep'temporary password'
/var/
log/mysql/mysqld.
log修改密碼:mysql -uroot -pal/4oshfh5Qw
密碼必須包含大寫字母小寫字母數字和符號,不然會提示:ERROR 1819 (HY000): Your password does not satisfy the current policy requirements(您的密碼不符合當前的安全策略要求)
修改密碼後,退出再登錄成功!
到此,就完成了MySQL的安裝!
方法二:mysql跳過許可權檢查,強制修改密碼
1.mysql服務:service mysqld stop (centos7:systemctl stop mysqld.service).
2.vim /etc/my.cnf 加入skip-grant-tables
3.mysql:service mysqld restart(centos7:systemctl restart mysqld.service)
4.輸入 mysql 直接登錄MySQL資料庫,然後use mysql;
5.msql5.7資料庫下已經沒有password這個欄位了,password欄位改成了 authentication_string
更改語句替換為update mysql.user set authentication_string=password('root') where user='root' ;
6.my.cnf文件刪掉skip-grant-tables 這一行,然後重啟MySQL,/etc/init.d/mysqld restart,否則MySQL仍能免密碼登錄
7.sql -u root -p 登陸,參數說明:-h是主機名 -u是用戶名 -p是密碼
六、授權遠程登錄
如果不開啟遠程登錄許可權,將會遇到類似下麵的錯誤:
在客戶機上使用 Navicat for MySQL 遠程連接就報1130的錯
配置mysql遠程連接
mysql
>GRANT
ALLPRIVILEGES
ON*.*
TO
'root'
@
'%'IDENTIFIED
BY'密碼'
WITH
GRANT OPTION;
mysql>FLUSH PRIVILEGES
完成!
Linux下徹底卸載mysql
1.查看當前系統是否有安裝mysql:rpm -qa|grep mysql。
2.停止mysql服務、刪除之前安裝的mysql 刪除命令:rpm -e –nodeps 包名如果提示依賴包錯誤,則使用以下命令嘗試例:rpm -e mysql-community-server-5.7.24-1.el6.x86_64 –nodeps
如果提示錯誤:error: %preun(xxxxxx) scriptlet failed, exit status 1
則用以下命令嘗試:
rpm -e --noscripts mysql-community-client-5.7.24-1.el6.x86_64
3.之前老版本mysql的目錄、並且刪除老版本mysql的文件和庫
find / -name mysql
註意:卸載後/etc/my.cnf不會刪除,需要進行手工刪除:rm -rf /etc/my.cnf
4.再次查找mysql是否有安裝:rpm -qa|grep -I mysql