前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CentOS7下安装MySQL5.7

CentOS7下安装MySQL5.7

原创
作者头像
Action
修改2021-08-24 15:50:28
4910
修改2021-08-24 15:50:28
举报
文章被收录于专栏:WEB开发~WEB开发~

安装YUM Repo

下载命令

代码语言:txt
复制
wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

进行repo的安装

代码语言:txt
复制
rpm -ivh mysql57-community-release-el7-9.noarch.rpm

执行完成后会在/etc/yum.repos.d/目录下生成两个repo文件mysql-community.repo mysql-community-source.repo

yum安装

代码语言:txt
复制
cd /etc/yum.repos.d

yum install mysql-server

执行完成

启动MySQL

代码语言:txt
复制
systemctl start mysqld

获取临时密码

代码语言:txt
复制
grep 'temporary password' /var/log/mysqld.log

在第一次登录的时候用这个密码

如果没有获得临时密码,就删除原来的安装过的MySQL残留的数据

代码语言:txt
复制
rm -rf /var/lib/mysql

然后再启动

代码语言:txt
复制
systemctl start mysqld 

登录

代码语言:txt
复制
mysql -uroot -p

然后输入刚才获得的临时密码

登录不了怎么办

修改配置文件

代码语言:txt
复制
vim /etc/my.conf

在mysqld后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程

保存后退出,然后再启动

代码语言:txt
复制
systemctl start mysqld 

修改密码

查看 mysql 初始的密码策略

代码语言:txt
复制
SHOW VARIABLES LIKE 'validate_password%';

设置密码的验证强度等级,设置 validate_password_policy 的全局参数为 LOW

代码语言:txt
复制
set global validate_password_policy=LOW; 

设置密码长度

代码语言:txt
复制
 set global validate_password_length=6; 

设置密码 

代码语言:txt
复制
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456'; 

关于 mysql 密码策略相关参数;

validate_password_length 固定密码的总长度;

validate_password_dictionary_file 指定密码验证的文件路径;

validate_password_mixed_case_count 整个密码中至少要包含大/小写字母的总个数;validate_password_number_count 整个密码中至少要包含阿拉伯数字的个数;validate_password_policy 指定密码的强度验证等级,默认为 MEDIUM;

关于 validate_password_policy 的取值:

LOW:只验证长度;

1/MEDIUM:验证长度、数字、大小写、特殊字符;undefined2/STRONG:验证长度、数字、大小写、特殊字符、字典文件;validate_password_special_char_count 整个密码中至少要包含特殊字符的个数;

修改密码

代码语言:txt
复制
set password=password("123456"); 

开启远程控制

MySQL默认是没有开启远程控制的,必须添加远程访问的用户,即默认是只能自己访问,别的机器是访问不了的。

方式一

代码语言:txt
复制
mysql -u root -p

show databases;

use mysql;

show tables;

select Host, User from user;

update user set Host='%' where User='root';  

flush privileges;

方式二

使用grant命令

代码语言:txt
复制
grant all privileges on 数据库名.表名 to 创建的用户名(root)@"%" identified by "密码";

flush privileges; #刷新刚才的内容

格式说明

数据库名.表名 如果写成.代表授权所有的数据库

如:

代码语言:txt
复制
grant all privileges on _._ to root@"113.123.123.1" identified by "123456789";

@ 后面是访问mysql的客户端IP地址(或是 主机名) % 代表任意的客户端,如果填写 localhost 为本地访问(那此用户就不能远程访问该mysql数据库了)

其他配置

设置安全选项:

代码语言:txt
复制
mysql_secure_installation

关闭MySQL

代码语言:txt
复制
systemctl stop mysqld 

重启MySQL

代码语言:txt
复制
systemctl restart mysqld 

查看MySQL运行状态

代码语言:txt
复制
systemctl status mysqld 

设置开机启动

代码语言:txt
复制
systemctl enable mysqld 

关闭开机启动

代码语言:txt
复制
systemctl disable mysqld 

配置默认编码为utf8:

vi /etc/my.cnf

代码语言:txt
复制
mysqld 

character_set_server=utf8 

init_connect='SET NAMES utf8'

其他默认配置文件路径:

配置文件:/etc/my.cnf

日志文件:/var/log/var/log/mysqld.log

服务启动脚本:/usr/lib/systemd/system/mysqld.service

socket文件:/var/run/mysqld/mysqld.pid

查看版本

代码语言:txt
复制
select version();

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装YUM Repo
  • yum安装
  • 启动MySQL
  • 获取临时密码
  • 登录
  • 登录不了怎么办
  • 修改密码
  • 开启远程控制
    • 方式一
      • 方式二
      • 其他配置
        • 设置安全选项:
          • 关闭MySQL
            • 重启MySQL
              • 查看MySQL运行状态
                • 设置开机启动
                  • 关闭开机启动
                    • 配置默认编码为utf8:
                      • 查看版本
                      相关产品与服务
                      云数据库 SQL Server
                      腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
                      领券
                      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档