栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

CentOS下安装及配置MySQL

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

CentOS下安装及配置MySQL

大家好,我是中国码农 摘星人。

最近准备做一个系列的常见环境搭建、软件安装及配置教程。

MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL 是最好的 RDBMS 应用软件之一。

网上关于 MySQL 的安装及配置参差不齐,且文章粗制滥造、华而不实。经过多次仔细考究、操作之后,摘星人 完成了《 CentOS 下安装及配置 MySQL》,欢迎分享/收藏/赞/在看!

欢迎关注我的个人微信公众号:康元路8号!

1 检查系统 MySQL 相关信息

检查系统中是否有安装 mariadb,是否自带了 MySQL 以及相关安装包。

如果有的话则应先将其卸载: rpm -e --nodeps xxx

mysql -V
rpm -qa | grep mysql
rpm -qa | grep mariadb

2 下载并安装 MySQL

当前我的服务器镜像版本是:CentOS 7.6

我想要装:MySQL 5.7

在 usr/local 目录下新建 mysql 目录

mkdir /usr/local/mysql
ll /usr/local

在该目录下,下载并安装 MySQL 官方的 Yum Repository(这里下载的是5.7版本的)

MySQL Yum Repository

wget https://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
ll
yum -y install mysql57-community-release-el7-10.noarch.rpm


安装 MySQL 服务器

yum -y install mysql-community-server


安装完成,启动 MySQL 服务,并查看运行状态

systemctl start mysqld.service
systemctl status mysqld.service

找到初始密码,并登录数据库

grep "password" /var/log/mysqld.log
mysql -uroot -p

修改密码为:root

ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';

可以看到因密码过于简单而报出警告,我们先设置一个符合要求的密码:Root_123

ALTER USER 'root'@'localhost' IDENTIFIED BY 'Root_123';

顺带提一下,出现:Your password does not satisfy the current policy requirements,都是密码不符合密码策略,解决方法是要么符合该策略,要么修改密码策略。

查看 MySQL 初始的密码策略

SHOW VARIABLES LIKE 'validate_password%';

分别执行如下命令修改策略,修改后查看是否成功

set global validate_password.check_user_name=OFF
set global validate_password.length=4;
set global validate_password.mixed_case_count=0;
set global validate_password.number_count=0;
set global validate_password.policy=LOW;
set global validate_password.special_char_count=0;

MySQL 密码策略相关参数

  1. validate_password.dictionary_file 指定密码验证的文件路径

  2. validate_password.length 固定密码的总长度

  3. validate_password.mixed_case_count 整个密码中至少要包含大/小写字母的总个数

  4. validate_password.number_count 整个密码中至少要包含阿拉伯数字的个数

  5. validate_password.policy 指定密码的强度验证等级,默认为 MEDIUM

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

现在可以修改密码为:root

ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';

3 远程访问 MySQL 3.1 授权

当前服务器只能访问其本地数据库,远程是连接不上的,因此要进行授权

*.* 可以使用所有数据库的所有数据表

'root'@'%' 任意 IP 可以使用 root 用户

IDENTIFIED BY 'xxx' 这里的 xxx 表示 root 用户登录 MySQL 的密码

flush privileges; 刷新,立即生效

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Root_123' WITH GRANT OPTION;
flush privileges;

3.2 开放端口

开放服务器 3306 端口

3.3 测试连接

Navicat 新建连接,输入相关信息测试连接

这里附上今后可能会用到的配置信息

[mysqld]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
# 设置mysql的安装目录
basedir=D:Javamysql-8.0.12-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:Javamysql-8.0.12-winx64data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8
4 卸载 MySQL

停止 MySQL 服务,查看已下载的 MySQL 相关信息,并使用命令依次卸载

systemctl stop mysqld.service

rpm -qa | grep mysql

rpm -e --nodeps mysql-community-client-plugins-8.0.27-1.el8.x86_64
rpm -e --nodeps mysql80-community-release-el8-2.noarch
rpm -e --nodeps mysql-community-client-8.0.27-1.el8.x86_64
rpm -e --nodeps mysql-community-common-8.0.27-1.el8.x86_64
rpm -e --nodeps mysql-community-server-8.0.27-1.el8.x86_64
rpm -e --nodeps mysql-community-libs-8.0.27-1.el8.x86_64

5 查看 MySQL 版本的四种方法 5.1 mysql -V
mysql -V

5.2 mysql --help | grep MySQL
mysql --help | grep MySQL

5.3 msql> status;
mysql> status;

5.4 mysql> select version();
mysql> select version();

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/675387.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号