下載 MySQL 源安裝包,能夠下載到本地,再上傳到服務器mysql
也能夠直接使用 wget 直接下載sql
wget http://repo.mysql.com/mysql57-community-release-el7-11.noarch.rpm數據庫
安裝 mysql 源安全
yum -y install mysql57-community-release-el7-11.noarch.rpm服務器
安裝 mysqlsocket
yum -y install mysql-community-server工具
systemctl start mysqld.service 啓動 mysql
systemctl stop mysqld.service 中止 mysql
systemctl restart mysqld.service 重啓 mysql
systemctl status mysqld.service 查看 mysql 當前狀態ui
配置文件:/etc/my.cnf
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid阿里雲
此時 MySQL 已經正常運行,進入 MySQL 須要 root 用戶的密碼,使用下面指令從 log 中拿到默認密碼編碼
grep "password" /var/log/mysqld.log
使用以下命令進入數據庫:
mysql -uroot -p

輸入初始密碼,此時不能作任何事情,由於 MySQL 默認必須修改密碼後才能操做數據庫,登陸 MySQL,重置密碼
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
MySQL 安裝了密碼安全檢查插件,默認密碼檢查測會要求密碼包含:大小寫字母,數字,特殊字符,而且長度不能小於8位,不然會提示出錯
密碼策略(執行下面這條指令,必須先修改密碼)
show variables like '%password%';
validate_password_policy:密碼策略,默認爲MEDIUM策略
validate_password_dictionary_file:密碼策略文件,策略爲STRONG才須要
validate_password_length:密碼最少長度
validate_password_mixed_case_count:大小寫字符長度,至少1個
validate_password_number_count :數字至少1個
validate_password_special_char_count:特殊字符至少1個
策略
0 | LOW 檢查長度
1 | MEDIUM 檢查長度,數字,大小寫字母,和特殊字符
2 | STRONG 檢查長度,數字,大小寫字母,和特殊字符,dictionary file
修改 /etc/my.cnf,在 [mysqld] 下添加以下配置,而後重啓 mysql:
character_set_server=utf8
init_connect='SET NAMES utf8'
默認只容許 root 帳戶在本地登陸,若是要在其它機器上鍊接 mysql,必須修改 mysql 容許遠程鏈接,或者添加一個遠程鏈接子帳戶
select host, user from user;
容許遠程計算機鏈接,修改成%表示容許任意的host訪問,若是隻容許一個 IP 訪問,能夠修改成相應的 IP。好比修改成 192.168.3.45,表示只容許這個IP遠程訪問mysql,修改事後重啓 MySQL
update user set host = '%' where user = 'root';
使用 mysql -uroot -p 登陸數據庫,查看全部數據庫
show databases;
使用某一個數據庫
use dbname;
建立數據庫
create database chatdb;
刪除數據庫
drop database chatdb;
對於數據庫的操做,在命令行操做不夠友好,可使用 GUI 工具,MySQL 的圖形管理工具備不少,在此使用 MySQL Workbench
在本地能夠登陸成功,遠程登陸可能失敗,登陸失敗常見緣由以下:
IP 地址,用戶名和密碼不匹配
防火牆限制端口號(關閉防火牆,或者容許端口號公網訪問)
數據庫限制 IP 訪問(參考 MySQL 遠程登陸)
在上面信息都匹配的狀況下,我仍然不能訪問,服務器使用的是阿里雲,系統 CentOS,解決方法?
登陸阿里雲控制檯,找到安全組策略,添加 3306 端口