当前位置: 首页 > news >正文

MySQL数据库——在Centos7环境安装

MySQL在Centos7环境安装

1.切换root用户

安装与卸载中,用户全部切换成为root,安装好后,普通用户也能使用

2.卸载不要的环境

要将自己环境中有关mysql的全都删除,避免安装过程中被影响

ps axj | grep mariadb 先检查是否有mariadb服务启动

这种状态才是没有启动的

如果存在启动的mariadb服务,执行systemctl stop mariadb.service,再运行ps axj | grep mariadb

3.检查并卸载系统安装包

检查自己的环境中存不存在其他的安装包,避免在安装过程中用错或产生干扰,使最后安装结果的版本不匹配

rpm -qa | grep mariadb

rpm -qa | grep mysql

我的环境中并没有,

假设有其他的包,会显示包的名称,例如:

mysql-community-server-5.7.41-1.el7.x86_64
mysql57-community-release-el7-11.noarch
mysql-community-client-5.7.41-1.el7.x86_64
mysql-community-libs-5.7.41-1.el7.x86_64

此时就需要卸载这些默认安装包,执行(最好一个一个卸载):

sudo yum remove mariadb

然后检查是否有文件/etc/my.cnf,执行ls /etc/my.cnf,然后做个备份

4.获取mysql官方yum源

检查自己系统版本:cat /etc/redhat-release

我的是不常用的示范机,装的是阿里云的linux系统

正常应该是显示centos版本,例如:

浏览器输入:Index of /232905

注意:最好安装和自己系统⼀致的mysql版本,否则可能会存在软件兼容性问题

找到后下载到你的本地,然后上传到你的Linux服务器

然后右键选择查看网页源代码,这样会显示出来版本号全称

找mysql57开头的,后缀是elX-X的(大概在一百五十多行)

然后在当前目录新建一个文件夹MySQL

mkdir MySQL

cd MySQL

然后上传刚下载的mysql文件

我这里使用rz命令,不需要用xftp,可以先使用yum下载(sudo yum install lrzsz

5.安装mysql yum源

查看本地yum源,安装前后进行对比,命令ls /etc/yum.repos.d/ -al,(我们的肯定不相同,但是可以看到没有mysql相关的yum源)

安装,使用rmp,命令rpm -Uvh mysql57-community-release-el7-9.noarch_.rpm(后边跟你自己的包的名称,注意版本号)

再次查看yum源,会发现多了两个mysql相关的

再看看能不能工作,输入命令yum list |grep mysql(需要等待几秒,我只截取了部分,后边还有很多)

6.安装mysql服务

执行命令yum install -y mysql-community-server

有可能会报错,如下:

这种情况是密匙过期,执行命令rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022就能解决

然后再次执行安装命令

成功!

7.查看配置文件和数据存储位置

/etc/my.cnf此文件是mysql配置文件

/var/lib/mysql此文件是存储mysql数据的文件

8.启动服务

执行命令systemctl start mysqld.service

查看启动服务,执行命令ps axj |grep mysqld,可以看到已经启动了

9.登录方法

我们现在还不知道密码,正常情况执行mysql -uroot是还登录不上的,有几种登录方式,我直接挑一种大部分场景都可以用的:直接跳过密码验证进行登录,需要进行mysql配置

执行命令vim /etc/my.cnf,然后在最后一行加上skip-grant-tables

然后按esc:wq!保存配置

配置完以后需要重启mysql服务,执行命令systemctl restart mysqld

启动mysql,执行命令mysql -uroot

登录成功!

10.设置密码

mysql> use mysql;
mysql> update mysql.user set authentication_string = password('新密码') where user='root';
mysql> flush privileges;
mysql> quit;

然后把配置文件改回来。就是把之前在/etc/my.cnf加的那一行删除了,然后重启mysql服务systemctl restart mysqld,这次进行登录,但是需要在结尾加上-p,不加是不需要输入密码的登录方式

成功登录!

11.开机自启动(选择性设置)

执行命令:

systemctl enable mysqld

systemctl daemon-reload

12.my.cnf配置

配置⼀下my.cnf,主要是数据库客户端和服务器的编码格式

我这里配置了如上三种,配置完毕后重启mysql服务即可systemctl restart mysqld

可选配置:

  1. port=3306: 这个设置指定了 MySQL 服务器监听的端口号。默认情况下,MySQL 使用端口号 3306 来接收客户端的连接。你可以根据需要修改这个值,但通常情况下不需要更改。
  2. character-set-server=utf8: 这个设置指定了 MySQL 数据库服务器的默认字符集。在这种情况下,字符集被设置为 UTF-8,这是一种通用的字符编码,支持多种语言的字符集。设置数据库的字符集是非常重要的,特别是当数据库需要存储和处理多语言数据时。
  3. default-storage-engine=innodb: 这个设置指定了 MySQL 数据库服务器的默认存储引擎。在这种情况下,存储引擎被设置为 InnoDB。InnoDB 是 MySQL 中最常用的存储引擎之一,它支持事务、外键和行级锁等特性,通常被用于处理事务性的数据。MySQL 还支持其他存储引擎,如 MyISAM、Memory 等,每种存储引擎都有其自身的特点和适用场景。
  4. datadir=/var/lib/mysql: 这个设置指定了 MySQL 数据库服务器的数据目录。在这个配置中,数据目录被设置为 /var/lib/mysql,这是 MySQL 默认的数据存储位置。
  5. socket=/var/lib/mysql/mysql.sock: 这个设置指定了 MySQL 数据库服务器的套接字文件路径。在这个配置中,套接字文件路径被设置为 /var/lib/mysql/mysql.sock,MySQL 客户端可以通过这个套接字与服务器进行通信。
  6. symbolic-links=0: 这个设置禁用了 MySQL 数据库服务器中的符号链接,以预防各种安全风险。
  7. log-error=/var/log/mysqld.log: 这个设置指定了 MySQL 数据库服务器的错误日志文件路径。在这个配置中,错误日志文件被设置为 /var/log/mysqld.log
  8. pid-file=/var/run/mysqld/mysqld.pid: 这个设置指定了 MySQL 数据库服务器的进程 ID 文件路径。在这个配置中,进程 ID 文件被设置为 /var/run/mysqld/mysqld.pid

相关文章:

MySQL数据库——在Centos7环境安装

MySQL在Centos7环境安装 1.切换root用户 安装与卸载中,用户全部切换成为root,安装好后,普通用户也能使用 2.卸载不要的环境 要将自己环境中有关mysql的全都删除,避免安装过程中被影响 ps axj | grep mariadb 先检查是否有mari…...

怎样规避液氮容器内部结霜的问题

液氮容器内部结霜问题一直是我们在使用液氮储存罐时遇到的一个棘手难题。液氮的极低温度使得容器内部很容易产生结霜现象,这不仅影响了容器的正常使用,还可能对内部样品或设备造成损坏。因此,如何有效规避液氮容器内部结霜问题成为了每个使用…...

冶金工业5G智能工厂工业物联数字孪生平台,推进制造业数字化转型

冶金工业5G智能工厂工业物联数字孪生平台,推进制造业数字化转型。传统生产方式难以满足现代冶金工业的发展需求,数字化转型成为必然趋势。通过引入5G、工业物联网和数字孪生等先进技术,冶金工业可以实现生产过程智能化、高效化和绿色化&#…...

一文入门机器学习参数调整实操

作者前言: 通过向身边的同事大佬请教之后,大佬指点我把本文的宗旨从“参数调优”改成了“参数调整”。实在惭愧,暂时还没到能“调优”的水平,本文只能通过实操演示“哪些操作会对数据训练产生影响”,后续加深学习之后,…...

基于51单片机的银行排队呼叫系统设计

一.硬件方案 本系统是以排队抽号顺序为核心,客户利用客户端抽号,工作人员利用叫号端叫号;通过显示器及时显示当前所叫号数,客户及时了解排队信息,通过合理的程序结构来执行排队抽号。电路主要由51单片机最小系统LCD12…...

JXCategoryView的使用总结

一、初始化 -(JXCategoryTitleView *)categoryView{if (!_categoryView) {_categoryView [[JXCategoryTitleView alloc] init];_categoryView.delegate self;_categoryView.titleDataSource self;_categoryView.averageCellSpacingEnabled NO; //是否平均分配项目之间的间…...

Centos9 安装VBox增强功能问题

安装步骤 更新gcc 首先手动更新gcc,防止无法兼容最新版本的内核,我这里将gcc 11更新到gcc 13 1.首先更新当前gcc和支持 yum install -y gcc gcc-c 2.下载新版本gcc压缩包 wget http://ftp.gnu.org/gnu/gcc/gcc-13.1.0/gcc-13.1.0.tar.gz 解压到usr ta…...

【JVM】Java虚拟机运行时数据分区介绍

JVM 分区(运行时数据区域) 文章目录 JVM 分区(运行时数据区域)前言1. 程序计数器2. Java 虚拟机栈3. 本地方法栈4. Java 堆5. 方法区6. 运行时常量池7. 直接内存 前言 之前在说多线程的时候,提到了JVM虚拟机的分区内存…...

大数据面试题之Kafka(2)

目录 Kafka的工作原理? Kafka怎么保证数据不丢失,不重复? Kafka分区策略 Kafka如何尽可能保证数据可靠性? Kafka数据丢失怎么处理? Kafka如何保证全局有序? 生产者消费者模式与发布订阅模式有何异同? Kafka的消费者组是如何消费数据的 Kafka的…...

前端面试题(基础篇十一)

一、DOCTYPE 的作用是什么&#xff1f; <!DOCTYPE> 声明一般位于文档的第一行&#xff0c;它的作用主要是告诉浏览器以什么样的模式来解析文档。一般指定了之后会以标准模式来进行文档解析&#xff0c;否则就以兼容模式进行解析。在标准模式下&#xff0c;浏览器的解析规…...

【论文阅读】Answering Label-Constrained Reachability Queries via Reduction Techniques

Cai Y, Zheng W. Answering Label-Constrained Reachability Queries via Reduction Techniques[C]//International Conference on Database Systems for Advanced Applications. Cham: Springer Nature Switzerland, 2023: 114-131. Abstract 许多真实世界的图都包含边缘标签…...

Git Flow 工作流学习要点

Git Flow 工作流学习要点 Git Flow — 流程图Git Flow — 操作指令优点&#xff1a;缺点&#xff1a;Git Flow 分支类型Git Flow 工作流程简述关于 feature 分支关于 Release 分支关于 hotfix 分支 总结 Git Flow — 流程图 图片来源&#xff1a;https://nvie.com/posts/a-succ…...

blender 快捷键 常见问题

一、快捷键 平移视图&#xff1a;Shift 鼠标中键旋转视图&#xff1a;鼠标中键缩放视图&#xff1a;鼠标滚动框选放大模型&#xff1a;Shift B线框预览和材质预览切换&#xff1a;Shift Z 二、常见问题 问题&#xff1a;导入模型成功&#xff0c;但是场景中看不到。 解…...

HTTP详解:TCP三次握手和四次挥手

一、TCP协议概述 TCP协议是互联网协议栈中传输层的核心协议之一&#xff0c;它提供了一种可靠的数据传输方式&#xff0c;确保数据包按顺序到达&#xff0c;并且没有丢失或重复。TCP的主要特点包括&#xff1a; 面向连接&#xff1a;TCP在传输数据之前需要建立连接。可靠传输&…...

详解HTTP:有了HTTP,为何需要WebSocket?

在日常生活中&#xff0c;HTTP 常用于请求数据。例如&#xff0c;当你打开一个天气预报网站时&#xff0c;浏览器会发送一个 HTTP 请求到服务器&#xff0c;请求当前的天气数据&#xff0c;服务器返回响应&#xff0c;浏览器解析并显示这些数据。 但是&#xff0c;当涉及到需要…...

Spring Boot 启动流程是怎么样的

引言 SpringBoot是一个广泛使用的Java框架&#xff0c;旨在简化基于Spring框架的应用程序的开发过程。在这篇文章中&#xff0c;我们将深入探讨SpringBoot应用程序的启动流程&#xff0c;了解其背后的机制。 Spring Boot 启动概览 SpringBoot应用程序的启动通常从一个包含 m…...

【学习笔记】数据结构(三)

栈和队列 文章目录 栈和队列3.1 栈 - Stack3.1.1 抽象数据类型栈的定义3.1.2 栈的表示和实现 3.2 栈的应用举例3.2.1 数制转换3.2.2 括号匹配的检验3.2.3 迷宫求解3.2.4 表达式求值 - 波兰、逆波兰3.2.5 反转一个字符串或者反转一个链表 3.3 栈与递归的实现3.4 队列 - Queue3.4…...

学习python笔记:10,requests,enumerate,numpy.array

requests库&#xff0c;用于发送 HTTP 请求的 Python 库。 requests 是一个用于发送 HTTP 请求的 Python 库。它使得发送 HTTP 请求变得简单且人性化。以下是一些基本的 requests 函数及其用途&#xff1a; requests.get(url, **kwargs) 发送一个 GET 请求到指定的 URL。 i…...

经典神经网络(13)GPT-1、GPT-2原理及nanoGPT源码分析(GPT-2)

经典神经网络(13)GPT-1、GPT-2原理及nanoGPT源码分析(GPT-2) 2022 年 11 月&#xff0c;ChatGPT 成功面世&#xff0c;成为历史上用户增长最快的消费者应用。与 Google、FaceBook等公司不同&#xff0c;OpenAI 从初代模型 GPT-1 开始&#xff0c;始终贯彻只有解码器&#xff0…...

MySQL库与表的操作

目录 一、登录并进入数据库 1、登录 2、USE 命令 检查当前数据库 二、库的操作 1、创建数据库语法 2、举例演示 3、退出 三、字符集和校对规则 1、字符集&#xff08;Character Set&#xff09; 2、校对集&#xff08;Collation&#xff09; 总结 3、操作命令 …...

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇&#xff0c;在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下&#xff1a; 【Note】&#xff1a;如果你已经完成安装等操作&#xff0c;可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作&#xff0c;重…...

C++实现分布式网络通信框架RPC(3)--rpc调用端

目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中&#xff0c;我们已经大致实现了rpc服务端的各项功能代…...

Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)

概述 在 Swift 开发语言中&#xff0c;各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过&#xff0c;在涉及到多个子类派生于基类进行多态模拟的场景下&#xff0c;…...

在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module

1、为什么要修改 CONNECT 报文&#xff1f; 多租户隔离&#xff1a;自动为接入设备追加租户前缀&#xff0c;后端按 ClientID 拆分队列。零代码鉴权&#xff1a;将入站用户名替换为 OAuth Access-Token&#xff0c;后端 Broker 统一校验。灰度发布&#xff1a;根据 IP/地理位写…...

华为OD机试-食堂供餐-二分法

import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...

CMake 从 GitHub 下载第三方库并使用

有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...

用docker来安装部署freeswitch记录

今天刚才测试一个callcenter的项目&#xff0c;所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...

全志A40i android7.1 调试信息打印串口由uart0改为uart3

一&#xff0c;概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本&#xff1a;2014.07&#xff1b; Kernel版本&#xff1a;Linux-3.10&#xff1b; 二&#xff0c;Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01)&#xff0c;并让boo…...

Typeerror: cannot read properties of undefined (reading ‘XXX‘)

最近需要在离线机器上运行软件&#xff0c;所以得把软件用docker打包起来&#xff0c;大部分功能都没问题&#xff0c;出了一个奇怪的事情。同样的代码&#xff0c;在本机上用vscode可以运行起来&#xff0c;但是打包之后在docker里出现了问题。使用的是dialog组件&#xff0c;…...

九天毕昇深度学习平台 | 如何安装库?

pip install 库名 -i https://pypi.tuna.tsinghua.edu.cn/simple --user 举个例子&#xff1a; 报错 ModuleNotFoundError: No module named torch 那么我需要安装 torch pip install torch -i https://pypi.tuna.tsinghua.edu.cn/simple --user pip install 库名&#x…...