MySQL环境配置

news2024/11/28 12:42:08

MySQL在centos7环境安装

  • 一.卸载不要的环境
  • 二.获取mysql官方yum源
  • 三.安装mysql服务
  • 四.mysql登陆
  • 五.设置配置文件my.cnf
  • 六.设置开机启动【可以不设】
  • 七.常见问题

安装与卸载中,⽤⼾全部切换成为root,⼀旦安装,普通⽤⼾也能使⽤。

一.卸载不要的环境

  • 陈旧环境清理

有的系统自带数据库,或者mariadb(MySQL的一种分支版本),有的可以使用,但作为MySQL数据库的学习,需要把其他的卸载掉。

  1. 首先检查是否含有MySQL数据库、mariadb数据库。

image-20230710133756111

image-20230710134038887

  1. 如果存在MySQL,那么先关闭它,再进行卸载。

image-20230710134457359

在Linux中,采用yum的方式获取安装包,一般都是.rpm的,rpm -qa就能查到所有的安装包,但此时只想查看MySQL的,所以grep筛选一下:

  1. 查看mysql安装包。

image-20230710134821859

  1. 卸载3中查找的安装包(如果你的系统中存在,就需要删掉)。

image-20230710135037658

  1. 确认是否存在遗留文件:ls /etc/my.cnf ,若有则需要删除。

mysql的数据文件一般不会随着卸载而被删除,数据会保存在/var/lib/mysql/目录下,但不会对我们的后续安装MySQL产生影响。

所以,卸载不要的环境最终可以总结以下这三点:

  1. 不存在mysql对应的rpm包
  2. 没有对应的mysql进程
  3. 没有my.cnf配置文件

做完前两步后my.cnf若仍存在,可以选择使用rm指令删除配置文件或者备份起来。

二.获取mysql官方yum源

image-20230710140459424

官方yum源中存在多个版本,要结合我们自己的系统版本进行相应的版本下载,否则可能会存在软件兼容性问题。

  1. 首先需要查看我们系统的版本:

image-20230710140329503

  1. 然后在官方中找到对应的版本进行下载:找到后直接点击

image-20230710140805736

下载之后放到桌面,方便通过rz命令传到centos中。为了方便管理,在root的家目录新建一个MySQL目录来保存此文件:

image-20230710141301371

  1. 查看yum源是否含有MySQL&&mysql的yum源安装

image-20230710141522643

不存在mysql的yum源,所以直接安装会失败,现在就需要先进行相应的yum源安装:

image-20230710141911031

  • 注:ivh选项相当于拷贝。

安装好之后,观察一下此时的yum源列表:

image-20230710142027400

此时就可以查看安装的这个yum源,可以看到有若干个版本:

 vim /etc/yum.repos.d/mysql-community.repo 

image-20230710142507542

总结一下:获取步骤可大致分为以下几步:

  • 在MySQL官网中找到对应的yum源并进行下载。
  • 通过rpm进行安装。
  • 安装前后效果就是更新本地yum源,让其中具有MySQL的yum源。
  1. 测试是否可以查到关于MySQL的内容(比较慢)
yum list | grep mysql

image-20230710142936673

说明此时mysql的yum源已经生效。此时mysql-community-release-el7.rpm安装包没有用处了,可以删掉也可以不进行处理。删掉之后也可以查看:

image-20230710143251885

此时已有了一键安装mysql的条件。

三.安装mysql服务

yum install -y mysql-community-server

image-20230710143632376

若存在以上问题,说明没有安装成功,此时将标题翻到:常见问题,对此进行解决。

image-20230710144137453

验证是否安装成功:

首先查看是否存在my.cnf的文件:

image-20230710144319193

查看mysqld服务端:
image-20230710144425175

查看mysql客户端:

image-20230710144512772

三位一体,就安装成功了。

启动mysql

image-20230710144743863

此时可以查看mysql的端口号:(mysql是一种网络服务)

image-20230710144822436

image-20230710144922183

四.mysql登陆

前三节已经安装好了mysql,在使用之前还需要进行登陆:

登陆方法有多种,但这里了解常见的一种就行了。

方法步骤:

  1. 打开mysql配置文件:my.cnf。
vim /etc/my.cnf

image-20230710153036011

  1. 在尾部添加:skip-grant-tables 并保存。

image-20230710153159252

  1. mysqld服务重启生效
systemctl stop mysqld
systemctl start mysqld
  1. 登陆mysql

image-20230710153901454

最后显示的mysql>表示已经登陆成功,可以使用mysql了。

image-20230710154222489

下面的各个名称都是数据库。

image-20230710160809064

输入quit退出数据库。

五.设置配置文件my.cnf

配置⼀下my.cnf,主要是数据库客⼾端和服务器的编码格式->统一使用UTF-8的编码格式。

mysql作为网络服务,那么就可以更改其指定的端口号,通过配置my.cnf进而更改端口号。(仅仅演示,后续仍需要改回)

image-20230710161059977

  • datadir=/var/lib/mysql代表数据库未来建表建库时的对应数据所在的路径。

  • socket:域间套接,会把本地mysql进程的pid放到mysql.sock中。

  • log-error:错误日志放到mysqld.log中‘

  • character-set-server:编码格式为utf-8

  • default-storage-engine:存储引擎为innodb

image-20230710162155830

配置之后为了生效,需要重新启动mysqld:

systemctl restart mysqld

image-20230711202034087

记得改回3306。

六.设置开机启动【可以不设】

#开启开机⾃启动
systemctl enable mysqld
systemctl daemon-reload

image-20230711205418581

不过云服务器不会关机,因此没什么影响。

七.常见问题

  • mysql 已经配置了客⼾端服务器utf8编码,但是⽆法输⼊中⽂
确保您在终端命令⾏中可以输⼊中⽂
[whb@VM-0-3-centos ~]$ env |grep LANG
LANG=en_US.utf8
  • 安装遇到秘钥过期的问题:(三.安装mysql服务出现了此情况)
Failing package is: mysql-community-client-5.7.39-1.el7.x86_64
GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

解决方案:

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

再重新安装mysql-community-server。

yum install -y mysql-community-server
  • mysql8.0的防火墙问题:

安全策略性更好,一旦设置免密码登陆,就不能网络登陆了,只能进行本地的域间套接字进行通信,因此我在配置skip-grant-tables后netstat -nltp查不到相应的网络端口号等等,因为免密码登陆导致不安全,8.0版本为了保证安全就就禁止掉了网络通信。

解决方案:若想查到网络进程,则只需把免密登陆的配置注释掉即可。

8.0在后续的练习,不会出现问题。只有可能在mysql链接C语言时会出现问题,所以到时候在换成5.6版本的mysql。

腾讯云服务器Linux(CentOS7)Mysql8远程连接失败,port端口为0,

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

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

相关文章

Python编程——字符串的三种定义方式讲解

作者:Insist-- 个人主页:insist--个人主页 本文专栏:python专栏 专栏介绍:本专栏为免费专栏,并且会持续更新python基础知识,欢迎各位订阅关注。 前言 上篇文章讲了python字符串的一些知识,现在…

[ICASSP 2019] 差分隐私压缩 K 均值

Differentially Private Compressive K-means Differentially Private Compressive K-means | IEEE Conference Publication | IEEE Xplore 摘要: 这项工作解决了从大量数据中学习并保证隐私的问题。概述的学习框架建议通过将大规模数据集压缩为广义随机矩的单个向…

Arduino为GD32芯片编程

GD32F103用Arduino编程 板子线路图Ardunino编程程序编制编译下载 板子线路图 这个STM32F103C8T6用国产的GD32来代替。 Ardunino编程 使用Arduino编程,在板子管理器中安装: 安装需要一些时间,在这里可以看到,STM32F1xx支持GD32F…

Flink-intervalJoin源码和并行度问题

1.源码 底层用的是connect 把两个流的数据先保存到状态中 先判断有没有迟到,迟到就放到侧输出流 再根据范围找数据 然后根据上界删除数据 package com.atguigu.gmall.realtime.test;import org.apache.flink.api.common.eventtime.SerializableTimestampAssigne…

【Java基础教程】(十一)面向对象篇 · 第五讲:透彻讲解Java中的static关键字及代码块——静态属性、静态方法和普通代码块、构造块、静态块的使用~

Java基础教程之面向对象 第五讲 本节学习目标1️⃣ static 关键字1.1 static定义静态属性1.2 static定义静态方法1.3 主方法1.4 实际应用功能一:实现类实例化对象个数的统计功能二: 实现属性的自动设置 2️⃣ 代码块2.1 普通代码块2.2 构造块2.3 静态块…

gulimall-首页渲染-nginx域名搭建

首页渲染与nginx域名搭建 前言一、首页1.1 整合 thymeleaf1.2 整合 dev-tools1.3 渲染分类数据 二、Nginx 域名搭建2.1 搭建域名访问环境2.2 nginx 配置文件2.3 总结 前言 本文继续记录B站谷粒商城项目视频 P136-140 的内容,做到知识点的梳理和总结的作用。 一、首…

组合取球-2022年全国青少年信息素养大赛Python国赛第6题

[导读]:超平老师计划推出《全国青少年信息素养大赛Python编程真题解析》50讲,这是超平老师解读Python编程挑战赛真题系列的第8讲。 全国青少年信息素养大赛(原全国青少年电子信息智能创新大赛)是“世界机器人大会青少年机器人设计…

教你如何自定义 Github 首页

一、创建自定义首页仓库 若要自定义首页,首先需要创建一个与你 Github ID 同名的仓库 创建完成后就可以开始为你的首页添加一些有趣的内容了,代码格式可以是 markdown 语法,也可以是 HTML 语法,但 HTML 的扩展性更强一点&#xf…

大唐京兆韦氏,两个老来发奋的诗人

在唐朝,诗人文学政治家如过江之鲫,有两个人物是绝对不可忽略的,那就是韦应物和韦庄。其中韦应物是韦庄的曾祖父。 京兆韦氏是整个唐朝时期最重要的士族家族之一,代有人才出,衣冠鼎盛,为关中望姓之首。韦氏…

I/O多复用函数(select、poll、epoll)

目录 一、select函数二、poll函数 select函数 int select(int nfds, fd_set *readfds, fd_set *writefds,fd_set *exceptfds, struct timeval *timeout);poll函数 int poll(struct pollfd *fds, nfds_t nfds, int timeout);epoll API epoll_create epoll_wait epoll_ctl一、sel…

Spring Boot 系列3 -- 日志文件

目录 1. 日志有什么用? 2. 日志的使用 2.1 得到日志对象 2.2 使用日志对象打印日志 3. 日志级别 3.1 日志级别的用途 3.2 日志级别的分类和使用 3.3 日志的打印规则 3.4 日志级别的设置 4. 日志持久化 5. 更简单的日志输出--lombok 6. 拓展1 lombok的原理 7. 拓…

SSM整合-1

SSM整合 创建工程SSM整合 2.1 Spring: SpringConfig 2.2 SpringMvc: ServletConfig、SpringMvcConfig 3.3 Mybatis JdbcConfig、MybatisConfig、jdbc.properties 3.功能模块 表与实体类 dao(接口自动代理) service(接口实现类) 业务层接口测试(整合Junit&#xff…

在vite创建的vue3项目中使用Cesium加载立体地形信息并调整初始化角度

在vite创建的vue3项目中使用Cesium加载立体地形信息并调整初始化角度 使用vite创建vue3项目 npm create vitelatestcd到创建的项目文件夹中 npm install安装Cesium npm i cesium vite-plugin-cesium vite -D配置 (1)在项目的vite.config.js文件中添加&am…

新手学习编程有什么注意事项?

为什么要学习如何编码? 世界正在成为一个地球村。编码是它发生的一个重要原因。 你应该学习如何编码的原因有很多,我将在这里触及其中的一些。 首先,学习编码可以大大提高你的分析和解决问题的能力。 您的收入潜力增加:有高级开…

NTIRE2023 图像复原和增强赛事Efficient Super-Resolution赛道冠军方案解读——DIPNet

DIPNet: Efficiency Distillation and Iterative Pruning for Image Super-Resolution 0. 简介 NTIRE 的全称为New Trends in Image Restoration and Enhancement Challenges,即“图像复原和增强挑战中的新趋势”,是CVPR(IEEE Conference on Computer V…

【JAVAEE】JVM中垃圾回收机制 GC

博主简介:想进大厂的打工人博主主页:xyk:所属专栏: JavaEE初阶 上篇文章我们讲了java运行时内存的各个区域。 传送门:【JavaEE】JVM的组成及类加载过程_xyk:的博客-CSDN博客 对于程序计数器、虚拟机栈、本地方法栈这三部分区域而言&#x…

6.S081——CPU调度部分(CPU的复用和调度)——xv6源码完全解析系列(10)

0.briefly speaking 终于到这里了,我们在之前阅读很多地方的内核代码时,总是习惯性地绕开CPU调度的部分(比如yield函数)。现在我们总算可以深入进去一探究竟了,这次总算是将整个操作系统中的一块重要拼图拼上去了。 有操作系统相关基础概念…

5 字符串拼接

5 字符串拼接作者: 赵晓鹏时间限制: 1S章节: 动态规划与贪心 输入说明 : 见问题描述。 输出说明 : 见问题描述。 输入范例 : aaaaaaaaaab aaaaaaaac aaaaaaaaaacaaaaaaaab 输出范例 : YES aa_________aaaaaaaab #include<iostream> #include<vector> using …

【数据分析 - 基础入门之pandas篇②】- pandas数据结构——Series

文章目录 前言一、Series的创建1.1 列表创建1.2 NumPy数组创建1.3 字典创建 二、Series索引2.1 显式索引2.2 隐式索引 三、Series切片2.1 显式切片2.2 隐式切片 四、Series基本属性和方法4.1 属性4.2 方法4.3 案例——使用 bool 值去除空值 五、Series运算六、Series多层行索引…

带你全面了解四大内存操作函数memset(),memcpy(),memmove(),memcmp()(附模拟实现)

内存操作函数 文章目录 内存操作函数memcpymemmovememcmpmemset 注&#xff1a;点击蓝色标题可以跳转到官方网站查看更权威的解析哦。 memcpy void * memcpy ( void * destination, const void * source, size_t num );函数memcpy从source的位置开始&#xff0c;向后复制num个…