目录
1.下载yum源
wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
2. 安装yum源
rpm -ivh mysql57-community-release-el7-8.noarch.rpm
3. 安装mysql
yum -y install mysql-server
4.启动mysql服务
service mysqld restart
5.重置root密码
为了加强安全性,MySQL5.7为root用户随机生成了一个临时密码,可通过错误日志查看,默认错误日志在/var/log/mysqld.log
grep "password" /var/log/mysqld.log
使用root用户登录mysql
mysql -uroot -p
用该密码登录到服务端后,必须修改密码,不然执行其他会报如下错误:
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
修改密码
alter user 'root'@'localhost' identified by '123456';
如果只是修改为一个简单的密码例如123456,会报以下错误:
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
这与validate_password_policy设置有关
validate_password_policy有以下取值:
Policy | Tests Performed |
---|---|
0 or LOW | Length |
1 or MEDIUM | Length; numeric, lowercase/uppercase, and special characters |
2 or STRONG | Length; numeric, lowercase/uppercase, and special characters; dictionary file |
默认是1,即MEDIUM,所以刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符
如果不想密码设置得那么复杂,必须修改两个全局参数:
首先,修改validate_password_policy参数的值
set global validate_password_policy=0;
这样,判断密码的标准就基于密码的长度了。这个由validate_password_length参数来决定,validate_password_length默认值为8,我们将其值设置为0
set global validate_password_length=0;
这样密码就可以修改为123456了
6.创建新用户,并允许其远程登录
-- 创建用户site 密码123456
CREATE USER 'site'@'%' IDENTIFIED BY '123456';
-- 授予所有表权限
grant all on *.* to 'site'@'%' identified by '123456' with grant option;
-- 刷新权限表
flush privileges;
7.默认配置文件
yum安装没有指定目录等配置项时,mysql一些默认文件位置:
配置文件:/etc/my.cnf
日志文件:/var/log/var/log/mysqld.log
服务启动脚本:/usr/lib/systemd/system/mysqld.service
socket文件:/var/run/mysqld/mysqld.pid
8.设置数据库默认编码
部署项目过程中,出现插入数据中文乱码的情况,可以设置默认编码解决问题
-- 查看数据库编码
show variables like 'character_set%';
修改配置文件/etc/my.cnf 加入如下配置
vi /etc/my.cnf
#文件最后加入如下配置
character_set_server=utf8
[client]
default-character-set=utf8
#重启mysql服务
service mysqld restart