CentOS7.x 上安装并配置 MySQL 8.x

如何在 CentOS 7 上安装并配置 MySQL 8.x

MySQL 是最流行的开源关系型数据库管理系统之一,被广泛应用于各种网站和应用程序中。

步骤 1:下载并添加 MySQL 8.x 官方 Yum 仓库

首先,打开终端,下载 MySQL Yum 仓库的 rpm 包:

wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

下载完成后,添加仓库到你的系统:

sudo rpm -ivh mysql80-community-release-el7-3.noarch.rpm

步骤 2:安装 MySQL 8.x

现在你可以使用 Yum 命令安装 MySQL 8.x 了:

sudo yum install mysql-community-server

步骤 3:启动 MySQL 服务并设置开机启动

安装完毕后,启动 MySQL 服务:

sudo systemctl start mysqld

设置 MySQL 服务开机自启:

sudo systemctl enable mysqld

步骤 4:运行安全配置脚本

运行 mysql_secure_installation 脚本,按提示设置密码策略和其他安全选项:

sudo mysql_secure_installation

步骤 5:增加自定义配置文件

MySQL 的默认配置文件通常位于 /etc/my.cnf,你可以在 /etc/my.cnf.d/ 目录下添加自定义配置文件,MySQL 启动时会读取这些文件。

  1. 创建一个新的配置文件,例如 custom.cnf
sudo nano /etc/my.cnf.d/custom.cnf
  1. 在文件中添加你的自定义配置。例如,如果你想修改最大连接数和缓存大小,可以添加如下配置:
[mysqld]
max_connections = 100
innodb_buffer_pool_size = 512M
  1. 保存并关闭文件。

请根据你的实际需要调整这些值。更多配置选项和详细信息,请参考 MySQL 官方文档。

步骤 6:重启 MySQL 服务

为了应用你的配置更改,重启 MySQL 服务:

sudo systemctl restart mysqld

在安装并配置 MySQL 8.x 的过程中,配置账号密码是一个重要的安全措施。以下是如何为你的 MySQL 数据库设置账号密码和进行基础的用户管理的步骤:

步骤 7:初始密码获取

MySQL 8.x 安装完成并首次启动后,系统会自动生成一个临时的 root 密码。你可以通过查看 mysqld 的日志文件来找到这个密码:

sudo grep 'temporary password' /var/log/mysqld.log

记下显示的临时密码,你将在初次登录时使用它。

登录 MySQL

使用以下命令并输入临时密码来登录 MySQL:

mysql -u root -p

系统会提示你输入密码,此处应输入你之前找到的临时密码。

修改 root 密码

在成功登录 MySQL 后,你可以修改 root 用户的密码。为此,可以使用以下 SQL 命令,确保将 your_new_password 替换为你自己的新密码:

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

创建新用户并设置密码

你可能不希望总是使用 root 账户操作数据库,为此,创建新的用户账户是一个好主意。以下是创建新用户并为其设置密码的命令:

CREATE USER 'new_user'@'localhost' IDENTIFIED BY 'user_password';

确保将 new_user 替换为新用户的用户名,将 user_password 替换为该用户的密码。

授权新用户

创建用户后,你需要为其分配适当的权限。以下命令将为新用户授予对所有数据库的所有权限(在实际使用中,你可能需要更细粒度的权限控制):

GRANT ALL PRIVILEGES ON *.* TO 'new_user'@'localhost' WITH GRANT OPTION;

刷新权限

在创建新用户或更改权限后,需要刷新 MySQL 的权限设置,以确保更改立即生效:

FLUSH PRIVILEGES;

退出 MySQL

完成所有操作后,你可以使用 exit 命令退出 MySQL:

exit

步骤 7:验证配置

验证你的配置是否生效,可以登录到 MySQL 服务器,然后执行以下命令:

mysql -u root -p -e "SHOW VARIABLES LIKE 'max_connections';"
mysql -u root -p -e "SHOW VARIABLES LIKE 'innodb_buffer_pool_size';"

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/770346.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis 服务器指南:高性能内存数据库的完整使用指南

Redis 服务器是一个基于内存的键值存储数据库,具有高性能和丰富的数据结构支持。 Redis 服务器的基本使用方法 安装 Redis Redis 可以通过官方网站下载源码进行编译安装,也可以通过包管理工具直接安装。 在 Ubuntu 上,可以使用以下命令进…

从政府工作报告中的IT热词统计探计算机行业发展(三)智能网联新能源汽车:2次

从政府工作报告探计算机行业发展 政府工作报告作为政府工作的全面总结和未来规划,不仅反映了国家整体的发展态势,也为各行各业提供了发展的指引和参考。随着信息技术的快速发展,计算机行业已经成为推动经济社会发展的重要引擎之一。因此&…

3.24作业

基于UDP的网络聊天室 项目需求: 如果有用户登录,其他用户可以收到这个人的登录信息如果有人发送信息,其他用户可以收到这个人的群聊信息如果有人下线,其他用户可以收到这个人的下线信息服务器可以发送系统信息 服务器端代码 #in…

智能小程序开发 —— P2P SDK 源码介绍(四)

ty.p2p.onDownloadTotalProgressUpdate 下载总进度回调 需引入P2PKit,且在>2.0.3版本才可使用 参数 function callback 下载总进度回调的回调函数 回调参数 Object res 属性类型默认值必填说明deviceIdstring是设备idprogressnumber是上传/下载进度 函数定…

matlab-双树复小波变换DTCWT(转自 MathWorks)

此示例展示了双树复小波变换 (DTCWT) 如何在信号、图像和体积处理方面提供优于临界采样 DWT 的优势。DTCWT 作为两个独立的双通道滤波器组来实现。为了获得本示例中描述的优点,您不能任意选择两个树中使用的缩放和小波滤波器。一棵树的低通(缩放&#xf…

3.25 ARM day8

1.自己设置温度湿度阈值&#xff0c;当温度过高时&#xff0c;打开风扇&#xff0c;蜂鸣器报警 2.当湿度比较高时&#xff0c;打开LED1灯&#xff0c;蜂鸣器报警 bee.c #include"bee.h" void bee_init() {RCC->MP_AHB4ENSETR | (0x1<<1);GPIOB->MODE…

Github多账号共存

在开发阶段&#xff0c;如果同时拥有多个开源代码托管平台的账户&#xff0c;在代码的管理上非常麻烦。那么&#xff0c;如果同一台机器上需要配置多个账户&#xff0c;怎样才能确保不冲突&#xff0c;不同账户独立下载独立提交呢&#xff1f; 我们以两个github账号进行演示 …

【工作中问题解决实践 十三】线上JVM参数该如何配置

在线上部署Java应用时&#xff0c;可以通过Java虚拟机&#xff08;JVM&#xff09;的参数来控制内存的分配和管理。 常见的JVM配置参数 以下是一些常见的JVM内存参数&#xff1a; -Xms&#xff1a; 设置JVM的初始堆大小。 重点关注-Xmx&#xff1a; 设置JVM的最大堆大小。 重…

docker desktop启动Kibana:No living connections, Error: No Living connections

Kibana启动之后一直报Kibana server is not ready yet 查看日志&#xff1a;No living connections, Error: No Living connections,连接ES失败&#xff01; 查看配置文件内容 /usr/share/kibana/config/kibana.yml 经过一系列查找资料和尝试之后&#xff0c;亲测以下方法可用…

阿里二面:谈谈ThreadLocal的内存泄漏问题?问麻了。。。。

引言 ThreadLocal在Java多线程编程中扮演着重要的角色&#xff0c;它提供了一种线程局部存储机制&#xff0c;允许每个线程拥有独立的变量副本&#xff0c;从而有效地避免了线程间的数据共享冲突。ThreadLocal的主要用途在于&#xff0c;当需要为每个线程维护一个独立的上下文…

字节算法岗二面,凉凉。。。

节前&#xff0c;我们星球组织了一场算法岗技术&面试讨论会&#xff0c;邀请了一些互联网大厂朋友、参加社招和校招面试的同学&#xff0c;针对算法岗技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备、面试常考点分享等热门话题进行了深入的讨论。 汇总…

华为OD技术面算法题整理

LeetCode原题 简单 题目编号频次409. 最长回文串 - 力扣(LeetCode)3

JSONObject优雅获取深层字段属性值

开篇说明 如果在这里获得过启发和思考&#xff0c;希望点赞支持&#xff01;对于内容有不同的看法欢迎来信交流。 技术栈 >> java 邮箱 >> 15673219519163.com 描述介绍 根据JSONObject中字段的名称,优雅获取深层属性值 使用示例,取error_entry的数量。JSON的层…

分治归并问题

“别让自我被拯救~” 谈谈归并与分治 当我们首次接触排序算法时&#xff0c;一定对所谓 "归并"方式排序的算法感到头疼~ 因为&#xff0c;我们难以形象出其不断 "分离"时&#xff0c;各个区域的状态。然而&#xff0c;即便 "归并"排序算法的学习…

新能源汽车充电桩消防安全视频智能可视化监管建设方案

一、方案背景 据应急管理部门统计公布的数据显示&#xff0c;仅2023年第一季度&#xff0c;新能源汽车自燃率就上涨了32%&#xff0c;平均每天就有8辆新能源汽车发生火灾&#xff08;含自燃&#xff09;。在已查明起火原因中&#xff0c;58%源于电池问题&#xff0c;19%源于碰…

输出当前时间

用途&#xff1a;在项目中一些属性中设置当前时间 实例代码 import java.time.LocalDateTime; import java.time.format.DateTimeFormatter;public class time {public static void main(String[] args){LocalDateTime china LocalDateTime.now(); DateTimeFormatter forma…

ASPICE学习笔记 ———— 过程模型(Process reference model)

文章目录 介绍过程模型Primary life cycle processes categoryAcquisition Process GroupSupply Process GroupSystem Engineering Processes GroupSoftware Engineering Processes Group Supporting life cycle processes categoryOrganizational life cycle processes catego…

动态规划算法入门

动态规划算法入门 动态规划(Dynamic Programming, DP)是一种常用的算法设计技术,它通过将原问题分解为相对简单的子问题,并存储子问题的解来避免重复计算,最终获得原问题的最优解。本文将通过实例来介绍动态规划的基本原理和思路。 一、动态规划的基本思想 动态规划的基本思…

【活动预告】本周四(3月28日)AI算法大模型备案线上活动

Al算法备案中心特邀十年合规专家「乐歌」&#xff0c;于本周四进行线上算法备案活动 支持AI创业者&#xff0c;免费咨询算法备案 3.28日20&#xff1a;00腾讯会议欢迎参与&#xff01; 扫码添加活动助理报名参加&#xff01;

c语音函数大全(T开头)

c语音函数大全(T开头) There is no nutrition in the blog content. After reading it, you will not only suffer from malnutrition, but also impotence. The blog content is all parallel goods. Those who are worried about being cheated should leave quickly. 函数名…