【Linux】Linux安装并配置mysql

目录

1.删除原有mysql

2.添加 MySQL Yum Repository

3.安装 MySQL

        3.1.报错        

4.启动 MySQL 服务

5.设置mysql

        5.1.密码验证组件

        5.2.密码策略

        5.3.移除匿名用户

        5.4.是否禁用root远程访问

        5.5.是否删除test

        5.6.是否重新加载权限

      5.7.设置远程权限

        5.7.1.登录mysql

5.8.端口更换

        5.8.1.查找配置文件的位置

        5.8.2. 修改配置

5.8.3.重启mysql 


        该教程是使用的 CentOS 8.2 安装 mysql。

1.删除原有mysql

rpm -qa|grep mariadb

        如果存在在mariadb,卸载命令如下:

#rpm -e --nodeps是强制卸载指令 后面是查出的依赖名称rpm -e --nodeps mariadb-libs-5.5.64-1.el7.x86_64

        全部卸载完输入以下指令,输出无则已卸载干净

rpm -qa|grep mysql

2.添加 MySQL Yum Repository

        MySQL 官方提供了 Yum 仓库,可以通过它来安装 MySQL。首先,下载 MySQL 的 Yum Repository

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

        响应内容:

        然后,添加下载的 repository 到你的系统中 

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

        响应内容:

​ 

3.安装 MySQL

        现在你可以通过以下命令安装 MySQL

sudo dnf install mysql-server

        响应内容:

        输入 y 确认 

        3.1.报错        

        如出现  :更新或下载时报错:为仓库 ‘appstream‘ 下载元数据失败 : Cannot prepare internal mirrorlist 

        原因是 CentOS Linux 8已于 2021-12-31日停止更新和维护了,CentOS团队从官方镜像中移除CentOS 8的包,所以在使用yum源安装或更新会报上述失败错误。

        进入仓库源文件夹下

cd /etc/yum.repos.d/

        修改镜像配置

sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*

        清空原有缓存,并重新生成 

yum clean all && yum makecache

        更新软件包

yum update -y

        操作完成,可以继续执行  sudo dnf install mysql-server 指令。

4.启动 MySQL 服务

        安装完成后,启动 MySQL 服务,并设置为开机自启

sudo systemctl start mysqld
sudo systemctl enable mysqld

        查看mysql运行状态 

systemctl status mysqld.service

        查看mysql进程

ps -ef|grep mysqld

        响应如下: 

5.设置mysql

        输入指令配置mysql基本的安全设置

mysql_secure_installation

        5.1.密码验证组件

        输入 y 确定启用这个密码验证组件。

        5.2.密码策略

        可输入(0,1,2) 

  • 0 = LOW: 密码长度至少为8个字符。这是最宽松的策略,仅要求密码达到一定的长度,但对字符类型没有特殊要求。

  • 1 = MEDIUM: 在LOW的基础上增加了更多要求,密码长度至少为8个字符,并且必须包含数字、大小写字母以及特殊字符。这比LOW级别提供了更强的安全性。

  • 2 = STRONG: 在MEDIUM的基础上进一步加强了要求,除了所有MEDIUM的要求外,还需要密码通过字典文件检查,这意味着密码不能是常见的单词或简单组合,有助于防止使用容易被猜到的密码

        输入完成后可输入创建密码,和再次确认密码。

        响应内容:

        密码策略成功通过会回显示密码强度,上图显示的强度是100 ,去人是否使用此密码

        输入 y 确认。 

        5.3.移除匿名用户

        继续输入 y 同意移除这些匿名用户。

        5.4.是否禁用root远程访问

        询问您是否要禁止 root 用户从远程主机登录 MySQL 数据库。如果需禁用远程访问root只能本地访问则输入y,需要远程输入随意字母。

        5.5.是否删除test

        询问您是否要删除 MySQL 默认提供的名为 'test' 的数据库及其对应的访问权限,需要删除输入y,不需随意。

        5.6.是否重新加载权限

        询问是否重新加载权限,输入 y  

        至此设置完成。

      5.7.设置远程权限

        如果上面都操作完成后还是无法远程访问 mysql 可以按下面步骤操作。

        5.7.1.登录mysql

                输入以下指令后,输入刚刚设置的密码即可登录。

mysql -u root -p

        响应内容:

        5.7.2设置

ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';
CREATE USER 'root'@'%' IDENTIFIED BY '你的新密码';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
  • ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';  #如果需要更改root密码的话
  • CREATE USER 'root'@'%' IDENTIFIED BY '你的新密码';          #创建一个可以从任何地方登录的root用户
  • GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;      #赋予所有权限
  • FLUSH PRIVILEGES;      #刷新权限使其生效

         使用 Navicat Premium 可成功远程访问mysql。

5.8.端口更换

        如想更换原始的3306端口的话,根据一下步骤操作。

        5.8.1.查找配置文件的位置

mysql --help | grep "Default options" -A 1

        MySQL在启动时会读取多个可能的配置文件路径。常见的默认位置包括/etc/my.cnf、/etc/mysql/my.cnf、$MYSQL_HOME/my.cnf(其中$MYSQL_HOME是一个环境变量,通常指向MySQL的安装目录)、~/.my.cnf等。你可以通过以下命令来查看你的MySQL实例实际使用了哪个配置文件。

        响应如下:

        5.8.2. 修改配置

        在my.cnf文件中,查找包含[mysqld]的部分,在这部分下面添加或修改如下行来指定新的端口号(例如,更改为3111)

5.8.3.重启mysql 

        保存对my.cnf文件的修改后,你需要重启MySQL服务以使更改生效

sudo systemctl restart mysqld

        重启后,你可以通过以下命令检查MySQL监听的端口是否已经更改为你设置的新端口

netstat -plnt | grep mysqld

        响应如下:

         如上图端口3111显示出来就代表已更改成功。

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

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

相关文章

springboot AOP 接口限流(基于IP的接口限流和黑白名单)

使用 Spring Boot 自定义注解和AOP实现基于IP的接口限流和黑白名单 在我们日常开发的项目中为了保证系统的稳定性,很多时候我们需要对系统做限流处理,它可以有效防止恶意请求对系统造成过载。常见的限流方案主要有: 网关限流: NG…

OpenCV CUDA模块中矩阵操作------范数(Norm)相关函数

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 在 OpenCV 的 CUDA 模块中,与范数(Norm)相关的函数主要用于计算矩阵的范数或者两个矩阵之间的差值范数。 主…

生成对抗网络(Generative Adversarial Networks ,GAN)

生成对抗网络是深度学习领域最具革命性的生成模型之一。 一 GAN框架 1.1组成 构造生成器(G)与判别器(D)进行动态对抗,实现数据的无监督生成。 G(造假者):接收噪声 ​&#xff0c…

httpclient请求出现403

问题 httpclient请求对方服务器报403,用postman是可以的 解决方案: request.setHeader( “User-Agent” ,“Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:50.0) Gecko/20100101 Firefox/50.0” ); // 设置请求头 原因: 因为没有设置为浏览器形式&#…

嵌入式硬件篇---IIC

文章目录 前言1. IC协议基础1.1 物理层特性两根信号线SCLSDA支持多主多从 标准模式电平 1.2 通信流程起始条件(Start Condition)从机地址(Slave Address)应答(ACK/NACK)数据传输:停止条件&#…

深入探讨 Java 注解:从基础到高级应用

Java 注解自 Java 5 引入以来,已成为现代 Java 开发中不可或缺的一部分。它们通过为代码添加元数据,简化了配置、增强了代码可读性,并支持了从编译时验证到运行时动态行为的多种功能。本文将全面探讨 Java 注解的使用、定义和处理方式,并通过一个实际的插件系统示例展示其强…

力扣-105.从前序与中序遍历序列构造二叉树

题目描述 给定两个整数数组 preorder 和 inorder &#xff0c;其中 preorder 是二叉树的先序遍历&#xff0c; inorder 是同一棵树的中序遍历&#xff0c;请构造二叉树并返回其根节点。 class Solution { public:TreeNode* buildTree(vector<int>& preorder, vecto…

NoSQL数据库技术与应用复习总结【看到最后】

第1章 初识NoSQL 1.1 大数据时代对数据存储的挑战 1.高并发读写需求 2.高效率存储与访问需求 3.高扩展性 1.2 认识NoSQL NoSQL--非关系型、分布式、不提供ACID的数据库设计模式 NoSQL特点 1.易扩展 2.高性能 3.灵活的数据模型 4.高可用 NoSQL拥有一个共同的特点&am…

【ios越狱包安装失败?uniapp导出ipa文件如何安装到苹果手机】苹果IOS直接安装IPA文件

问题场景&#xff1a; 提示&#xff1a;ipa是用于苹果设备安装的软件包资源 设备&#xff1a;iphone 13(未越狱) 安装包类型&#xff1a;ipa包 调试工具&#xff1a;hbuilderx 问题描述 提要&#xff1a;ios包无法安装 uniapp导出ios包无法安装 相信有小伙伴跟我一样&…

php数据导出pdf,然后pdf转图片,再推送钉钉群

public function takePdf($data_plan, $data_act, $file_name, $type){$pdf new \TCPDF(L); // L - 横向 P-竖向// 设置文档信息//$file_name 外协批价单;$pdf->SetCreator($file_name);$pdf->SetAuthor($file_name);$pdf->SetTitle($file_name);$pdf->SetSubjec…

每日算法-250513

每日算法 - 2024-05-13 记录今天学习的算法题解。 2335. 装满杯子需要的最短总时长 题目 思路 贪心 这道题的关键在于每次操作尽可能多地减少杯子的数量。我们每次操作可以装一杯或两杯&#xff08;不同类型&#xff09;。为了最小化总时间&#xff0c;应该优先选择装两杯不同…

城市生命线综合管控系统解决方案-守护城市生命线安全

一、政策背景 国务院办公厅《城市安全风险综合监测预警平台建设指南》‌要求&#xff1a;将燃气、供水、排水、桥梁、热力、综合管廊等纳入城市生命线监测体系&#xff0c;建立"能监测、会预警、快处置"的智慧化防控机制。住建部‌《"十四五"全国城市基础…

分布式AI推理的成功之道

随着AI模型逐渐成为企业运营的核心支柱&#xff0c;实时推理已成为推动这一转型的关键引擎。市场对即时、可决策的AI洞察需求激增&#xff0c;而AI代理——正迅速成为推理技术的前沿——即将迎来爆发式普及。德勤预测&#xff0c;到2027年&#xff0c;超半数采用生成式AI的企业…

auto.js面试题及答案

以下是常见的 Auto.js 面试题及参考答案&#xff0c;涵盖基础知识、脚本编写、运行机制、权限、安全等方面&#xff0c;适合开发岗位的技术面试准备&#xff1a; 一、基础类问题 什么是 Auto.js&#xff1f;它的主要用途是什么&#xff1f; 答案&#xff1a; Auto.js 是一个…

C语言中的指定初始化器

什么是指定初始化器? C99标准引入了一种更灵活、直观的初始化语法——指定初始化器(designated initializer), 可以在初始化列表中直接引用结构体或联合体成员名称的语法。通过这种方式,我们可以跳过某些不需要初始化的成员,并且可以以任意顺序对特定成员进行初始化。这…

高德地图在Vue3中的使用方法

1.地图初始化 容器创建&#xff1a;通过 <div> 标签定义地图挂载点。 <div id"container" style"height: 300px; width: 100%; margin-top: 10px;"></div> 密钥配置&#xff1a;绑定高德地图安全密钥&#xff0c;确保 API 合法调用。 参…

RabbitMQ发布订阅模式深度解析与实践指南

目录 RabbitMQ发布订阅模式深度解析与实践指南1. 发布订阅模式核心原理1.1 消息分发模型1.2 核心组件对比 2. 交换机类型详解2.1 交换机类型矩阵2.2 消息生命周期 3. 案例分析与实现案例1&#xff1a;基础广播消息系统案例2&#xff1a;分级日志处理系统案例3&#xff1a;分布式…

中小型培训机构都用什么教务管理系统?

在教育培训行业快速发展的今天&#xff0c;中小型培训机构面临着学员管理复杂、课程体系多样化、教学效果难以量化等挑战。一个高效的教务管理系统已成为机构运营的核心支撑。本文将深入分析当前市场上适用于中小型培训机构的教务管理系统&#xff0c;重点介绍爱耕云这一专业解…

C++虚函数食用笔记

虚函数定义与作用&#xff1a; virtual关键字声明虚函数&#xff0c;虚函数可被派生类override(保证返回类型与参数列表&#xff0c;名字均相同&#xff09;&#xff0c;从而通过基类指针调用时&#xff0c;实现多态的功能 virtual关键字: 将函数声明为虚函数 override关键…

运算放大器相关的电路

1运算放大器介绍 解释&#xff1a;运算放大器本质就是一个放大倍数很大的元件&#xff0c;就如上图公式所示 Vp和Vn相差很小但是放大后输出还是会很大。 运算放大器不止上面的三个引脚&#xff0c;他需要独立供电&#xff1b; 如图比较器&#xff1a; 解释&#xff1a;Vp&…