大家好,我是中国码农摘星人。
欢迎分享/收藏/赞/在看!
欢迎提出使用本篇文章安装 MySQL 时遇到的问题,本篇文章会持续更新…

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

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

文章目录

  • 1 检查系统 MySQL 相关信息
  • 2 下载并安装 MySQL
  • 3 远程访问 MySQL
    • 3.1 授权
    • 3.2 开放端口
    • 3.3 测试连接
  • 4 卸载 MySQL
  • 5 查看 MySQL 版本的四种方法
    • 5.1 mysql -V
    • 5.2 mysql --help | grep MySQL
    • 5.3 msql> status;
    • 5.4 mysql> select version();

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


****
【>>>步骤执行问题记录(持续更新…)>>>】

1.提示:

失败的软件包是:mysql-community-client-5.7.40-1.el7.x86_64GPG  密钥配置为:file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

执行如下,之后就可以重新安装

rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

【<<<步骤执行问题记录(持续更新…)<<<】

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

systemctl start mysqld.service
systemctl status mysqld.service

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

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


【>>>步骤执行问题记录(持续更新…)>>>】
【1.按要求输入临时密码后无法登录,提示:】

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)


【解决方案】
编辑配置文件:

vim /etc/my.cnf

输入如下并保存退出:

skip-grant-tables

重新启动 MySQL:

systemctl restart mysqld

登录 MySQL,其中要求输入密码时一直按回车即可进入:

mysql -uroot -p

进入之后,修改 MySQL root 账户的密码:

use mysql;
update user set authentication_string = '' where user = 'root';

authentication_string = ’ ’ 把 root 密码设置为空

再次打开 my.cnf 配置文件,将刚才添加的内容删除:

vim /etc/my.cnfskip-grant-tables

重启 MySQL 服务,进入 MySQL root 账户下即修改密码:

systemctl restart mysqldmysql -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 端口


CentOS 单机需要操作防火墙开放 3306 端口

# 开放3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 关闭3306端口
firewall-cmd --zone=public --remove-port=3306/tcp --permanent
# 配置立即生效
firewall-cmd --reload
# 查看防火墙所有开放的端口
firewall-cmd --zone=public --list-ports

3.3 测试连接

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

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

[mysqld]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
# 设置mysql的安装目录
basedir=D:\Java\mysql-8.0.12-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\Java\mysql-8.0.12-winx64\data
# 允许最大连接数
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.servicerpm -qa | grep mysqlrpm -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();

CentOS下安装及配置MySQL相关推荐

  1. 在CentOS下安装apche+tomcat+mysql+php

    在CentOS下安装apche+tomcat+mysql+php 本例中所用到的软件 Apache 2.2 Sun的JDK-1_5_0_12-linux-i586 MySQL: mysql-5.0.4 ...

  2. CentOS下安装及配置Tomcat

    大家好,我是中国码农摘星人. 欢迎分享/收藏/赞/在看! Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用, ...

  3. Windows下安装和配置Mysql保姆级教程(图文说明)

    Windows下安装和配置Mysql保姆级教程(图文说明) 下面将向大家说明Windows下安装和配置Mysql的方法步骤. 文章目录 Windows下安装和配置Mysql保姆级教程(图文说明) 前言 ...

  4. linux 环境下安装和配置mysql数据库以及远程登录

      上一篇文章写了linux 环境下配置python虚拟环境, 本篇文章我们来看看如何在linux环境下配置 mysql, 并实现远程数据库登录.    安装 //root 下安装,为了方便操作我全部 ...

  5. mac下安装与配置mysql数据库,Mac下MySQL的安装与配置

    之前一直用的是云服务器,在服务器上装了一个MySQL,但是今天发现到期了,而且续费时发现之前的大学生优惠不能用了,可是明明到6月份,大学生才毕业啊,shit!!!所以没办法只能在自己电脑上装一个MyS ...

  6. 64位电脑mysql_Windows 64位操作系统下安装和配置MySQL

    一安装方式 MySQL安装文件分为两种,一种是MSI格式的,一种是ZIP格式的.下面来看看这两种方式: MSI格式的可以直接点击安装,按照它给出的安装提示进行安装,Windows操作系统下一般MySQ ...

  7. 在centos 下安装和使用MySQL

    一.引言 想使用Linux已经很长时间了,由于没有硬性任务一直也没有系统学习,近日由于工作需要必须使用Linux下的MySQL.本以为有Windows下使用SQL Server的经验,觉得在Linux ...

  8. Mac平台下安装与配置MySQL

    转载自:https://github.com/jaywcjlove/mysql-tutorial/blob/master/chapter2/2.1.md 1.下载mysql安装包 官网下载安装包,选择 ...

  9. mac 如何配置mysql_MAC下安装与配置MySQL

    一 下载MySQL 访问MySQL的官网http://www.mysql.com/downloads/ 然后在页面中会看到"MySQL Community Server"下方有一个 ...

最新文章

  1. LeetCode Best Time to Buy and Sell Stock II
  2. Win7旗舰版系统hosts文件位置在哪里
  3. SQL存储过程调试方法
  4. 程序员的算法课(7)-01背包问题
  5. Python使用K-means聚类算法进行分类案例一则
  6. es管理器免root_OPPO手机免ROOT更换系统字体教程-适合大部分OPPO机型
  7. 2018年慈溪职高计算机实验班2019,包场高级中学(创新实验班)2019年中考录取分数线...
  8. VS2010应用程序的打包与图标设置
  9. CPU单线程性能排行榜/天梯图
  10. ask调制流程图_利用卷积神经网络的自动调制分类算法
  11. CPU/显卡GPU/CUDA/内存/缓存/SDK/API/DLL【转载整理】
  12. 如何快速上手操作Mac电脑?新手问号
  13. vue请求拦截 给所有的api接口的请求 params 带上一个存储的值及qs的安装
  14. 如何使用ArcGIS将Excel数据转换为shp格式
  15. DICOM:dcm4che工具包如何压缩dcm文件探讨(前篇)
  16. 椭球面投影面积计算(使用GeographicLib库)
  17. 优盘显示分区变0字解决方案
  18. python 爬取cosplay福利图片
  19. 射频识别打印机的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  20. 地磁传感器标定技术综述(1)

热门文章

  1. 翻转课堂教学动态网站设计论文
  2. Openstack Havana Dashboard测试和使用
  3. SpringAop动态数据源实现
  4. 二维码提取(不包括识别)
  5. matlab 向量元素,Matlab向量
  6. 千峰教育2218期2022.10.18日
  7. 教程 | 10分钟入门简笔画 11(简笔小插画入门)
  8. css 动画中 ease,seae-in,ease-in-out,ease-out,解释
  9. npm安装脚手架工具常见错误解决方法
  10. 加载flash必备的ShockwaveFlash控件属性