CentOS 安装 MySQL

安装 MySQL

下载 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工具

设置 MySQL

MySQL 启动,中止,重启,查看状态

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 已经正常运行,进入 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

MySQL 配置默认为 utf8 编码

修改 /etc/my.cnf,在 [mysqld] 下添加以下配置,而后重启 mysql:

character_set_server=utf8
init_connect='SET NAMES utf8'

MySQL 远程登陆

默认只容许 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;

MySQL GUI

对于数据库的操做,在命令行操做不够友好,可使用 GUI 工具,MySQL 的图形管理工具备不少,在此使用 MySQL Workbench

在本地能够登陆成功,远程登陆可能失败,登陆失败常见缘由以下:

IP 地址,用户名和密码不匹配
防火墙限制端口号(关闭防火墙,或者容许端口号公网访问)
数据库限制 IP 访问(参考 MySQL 远程登陆)

在上面信息都匹配的状况下,我仍然不能访问,服务器使用的是阿里云,系统 CentOS,解决方法?
登陆阿里云控制台,找到安全组策略,添加 3306 端口

相关文章
相关标签/搜索