CentOS 安装 MySQL

安装 MySQL

下载 MySQL 源安装包,可以下载到本地,再上传到服务器

也可以直接使用 wget 直接下载

wget http://repo.mysql.com/mysql57-community-release-el7-11.noarch.rpm

安装 mysql 源

yum -y install mysql57-community-release-el7-11.noarch.rpm

安装 mysql

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 当前状态

默认配置文件路径

配置文件:/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 端口

posted @ 2018-02-27 16:03  WCCW  阅读(278)  评论(0编辑  收藏  举报