如何在Centos 7环境下安装MySQL并登录

目录

先获取MySQL官方yum源

然后正常使用yum命令下载mysql即可完成MySQL的下载

使用mysql客户端登录mysqld服务端 

能够登录mysql客户端后,我们最后还需要做一点配置


先获取MySQL官方yum源(包括对yum源的介绍)

介绍一下yum源

yum源就是一个配置文件,文件后缀一般为repo,意为仓库,文件内就是一堆下载链接,可以帮yum找到该向哪个服务器发送网络请求,从而完成对软件的安装包的下载并对安装包解包。yum会自动根据当前系统的版本去找合适的yum源进行下载,一个yum源会有许多下载链接,这是为了解决依赖关系(注意这里的依赖关系和makefile没有任何关系),因为下载一个软件后,通常还需要一些软件运行的组件或者运行环境,比如别人想运行你写的hello world就得下载C库,所以一个yum源里除了得有指定软件的下载链接,还应该有其他依赖文件的下载链接。

yum就相当于应用商店,yum指令底层做了两件事,第一是根据yum源下载软件的安装包,也就是常说的下载软件,第二是解包,解包的方式为对rpm文件调用rpm-ivh指令,也就是常说的安装软件。注意从网络中只能下载软件的安装包到本地,但无法进行本地的软件安装,所以从网络下载完成后,需要本地解包进行软件的安装,也就是常说的下载软件后还需要安装软件。以rpm为后缀的文件就相当于安装包,Linux中以对rpm文件使用rpm -ivh指令完成对安装包的解包,也就是安装软件。

如何获取MySQL官方yum源

先打开网站http://repo.mysql.com/,然后按照下图的做法去做。

然后正常使用yum命令下载mysql即可完成MySQL的下载

如下图1所示,如果运行指令后没有报错,则此时mysql就下载成功了;

但如果下到最后并没有看到complete提示,而是有如下图2的报错信息,则说明下载遇到了密钥过期的问题(因为下载本质是网络通信,https协议中的密钥过期就会导致双方通信失败),解决方案也很简单,先输入指令rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 更新密钥,然后再重新调用下图1中的yum下载指令即可成功下载了。

如下图3所示,当Linux服务器中有mysql、mysqld、my.cnf这3个文件则说明mysql下载成功了,如果没有则说明下载失败,失败请回看上面的流程,看看是哪个环节出问题了。

  • 图1如下。
  • 图2如下。 
  • 图3如下。 

使用mysql客户端登录mysqld服务端 

在上文中说过,当Linux服务器中有mysql、mysqld、my.cnf这3个文件,则说明mysql下载成功了,说一下,在这3个文件中,mysql是客户端可执行文件,mysqld是服务端可执行文件(d表示守护进程),my.cnf是mysql和mysqld的配置文件,所以实际上mysql就是一个网络服务器,和我们以前自己编写TCP服务端和客户端是一样的,都是基于客户端和服务端的模式,所以想要mysql能够工作起来,首先要启动mysql的服务端mysqld,如下图所示,在红框处使用systemctl start mysqld命令启动服务端后,使用ps命令查看进程就能看到mysqld服务端进程的存在,使用netstat -nltp命令查看网络连接的状态就能看见mysqld处于listen监听状态(这就说明了mysqld服务端和mysql客户端本质是基于TCP协议进行通信的),正在等待mysql客户端的连接到来。

此时我们就可以通过登录客户端mysql来连接服务端mysqld了,登录客户端的方法一般有3种,如下:

  • (如果本方案不行,则就使用下一个方案)如下图所示,先输入蓝框处的指令sudo grep 'temporary password' /var/log/mysqld.log获取粉框处的临时密码(因为指令前有sudo,所以输入该条指令后会提示输入用户的Linux登录密码,输入密码后可以看到粉框处就会显示出临时密码了),然后输入红框处的指令mysql -uroot -p登录客户端mysql即可(输入该登录指令后,就会弹出Enter password:,我们在这后面输入粉框中的临时密码即可成功登录客户端mysql了)
  • (如果本方案不行,则就使用下一个方案)如果输入上一段中的指令sudo grep 'temporary password' /var/log/mysqld.log后发现没有显示临时密码,则说明你安装的是较新版本的mysql,而较新的mysql的确是没有所谓的临时密码的,此时直接输入指令mysql -uroot -p即可登录客户端mysql。
  • (学习mysql的初期,建议以这种方式进行登录)可以通过配置客户端mysql和服务端mysqld共同的配置文件my.cnf(vim打开my.cnf文件后如下图1所示,红框处有个[mysqld],这说明位于[mysqld下方的粉框中的内容全是服务端mysqld的配置内容;配置文件my.cnf中没有[mysql]是因为该版本下的客户端mysql没有什么bug,不需要啥配置内容,如果我们需要给客户端mysql进行配置,则如下图1的黄框处所示,可以手动添加一个[mysql],然后在其下方添加配置内容即可)让用户能够免密码登录mysql客户端,步骤为:如下图2所示,先通过指令sudo vim /etc/my.cnf打开配置文件(一定要加上sudo,否则没有权限更改my.cnf文件中的内容,即最后更改完毕后是没法通过wq保存退出该文件的,即使是wq!也无法保存退出该文件),然后在文件中添加上红框处的内容skip-grant-tables,然后wq保存退出该文件,最后如下图3所示,重启服务端mysqld以让mysqld重新读取配置文件中的内容以让刚刚配置的新内容生效(是不需要重启客户端mysql的,因为刚才在my.cnf文件中添加的配置内容是在[mysqld]的下方,即该配置内容是属于服务端mysqld的配置项,所以只有服务端mysqld需要被重启以在启动时重新读取配置文件中的内容;重启的方案有两种,第一种是直接使用下图3粉框处的systemctl restart mysqld,第二种是使用systemctl stop mysqld关闭服务端mysqld后再systemctl start mysqld启动服务端mysqld。),然后直接输入指令mysql -uroot -p即可登录客户端mysql(这时虽然也会显示出Enter password提示你输入密码,但并不用我们输入密码了,而是直接按回车即可成功登录,当然如果你输入了任意内容后再按回车也是可以成功登录的,这是因为此时已经不做判断了,你输入的内容会被直接丢弃,然后让你成功登录)

图1如下。

图2如下。

图3如下。

能够登录mysql客户端后,我们最后还需要做一点配置

完成上文中的步骤后,我们最后还需要对客户端mysql和服务端mysqld共同的配置文件my.cnf增加2个配置条目。如下图所示,先通过指令sudo vim /etc/my.cnf打开配置文件(一定要加上sudo,否则没有权限更改my.cnf文件中的内容,即最后更改完毕后是没法通过wq保存退出该文件的,即使是wq!也无法保存退出该文件),然后在文件中添加上红框处的两行内容character-set-server=utf8和default-storage-engine=innodb,然后wq保存退出该文件,最后重启服务端mysqld以让mysqld重新读取配置文件中的内容以让刚刚配置的新内容生效即可。

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

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

相关文章

超燃超欢乐!修仙喜剧动画《师兄啊师兄》第二季稳健开播

12月14日,备受瞩目的《师兄啊师兄》第二季终于稳健开播!首播两集连放,同时第一季全13集限免,不仅便于新观众丝滑入坑,老观众也可以二刷重温,可以说是非常良心了! 《师兄啊师兄》改编自人气网络小…

指针(笔记2)

一、const修饰指针 变量是可以修改的,如果把变量的地址交给一个指针变量,通过指针变量也可以修改这个变量。 我们希望给一个变量加上一些限制,不能被修改,那么这就由const起作用。 1.const修饰变量 (1)const如果放在&#xff…

基于Qt的登录页面设计

题目: 完善对话框,点击登录对话框,如果账号和密码匹配,则弹出信息对话框,给出提示”登录成功“,提供一个Ok按钮,用户点击Ok后,关闭登录界面,跳转到其他界面 如果账号和…

【数据结构和算法】判断子序列

其他系列文章导航 Java基础合集数据结构与算法合集 设计模式合集 多线程合集 分布式合集 ES合集 文章目录 其他系列文章导航 文章目录 前言 一、题目描述 二、题解 2.1 方法一:双指针 三、代码 3.1 方法一:双指针 3.1.1 Java易懂版:…

K8s可视化kuboard 部署

创建资产 [rootkube-master ~]# kubectl apply -f https://addons.kuboard.cn/kuboard/kuboard-v3.yaml 查看对应资源 [rootkube-master ~]# kubectl get pod -n kuboard NAME READY STATUS RESTARTS AGE kuboard-agent-2-5c4f886…

基于JSP+Servlet+Mysql的建设工程监管信息

基于JSPServletMysql的建设工程监管信息 一、系统介绍二、功能展示1.企业信息列表2.录入项目信息3.项目信息列表 四、其它1.其他系统实现五.获取源码 一、系统介绍 项目名称:基于JSPServlet的建设工程监管信息 项目架构:B/S架构 开发语言:…

论文阅读——GroupViT

GroupViT: Semantic Segmentation Emerges from Text Supervision 一、思想 把Transformer层分为多个组阶段grouping stages,每个stage通过自注意力机制学习一组tokens,然后使用学习到的组tokens通过分组模块Grouping Block融合相似的图片tokens。通过这…

软考科目如何选择?

软考科目繁多,让许多学弟学妹感到困惑,不知道该选择哪个科目。以下是一些建议,可以根据个人实际需求选择备考的科目。 1、初级是可选的 软考初级非常简单,适合刚刚入门学习的朋友报考。对于一些有基础的朋友,建议直接…

UE5 动画 Sequencer-学习笔记

P2. 课程介绍 资料:https://www.bilibili.com/video/BV1Ag411873f?p2&vd_source707ec8983cc32e6e065d5496a7f79ee6 Sequencer不仅可以做互动动画,还可以导出视频与序列帧 P3-4. 界面介绍 https://www.bilibili.com/video/BV1Ag411873f?p3&spm_…

【RocketMQ-Install】Windows 环境下安装 RocketMQ 及基础命令的使用

【RocketMQ-Install】Windows 环境下 安装本地 RocketMQ 及基础命令的使用 1)下载 RocketMQ 安装包1.1.官网下载(推荐)1.2.Git 下载1.3.安装环境要求说明 2)Windows 安装3)基础命令测试 1)下载 RocketMQ 安…

MAC如何判断是型号x64、ARM64

文章目录 前言如何操作解决办法: [MAC 知识](https://blog.csdn.net/qq_40374604/category_11129661.html) 前言 自从 MAC M1 出来后,MAC 分为英特尔芯片和苹果自家的芯片,导致很多软件安装也要区分版本。 比如,微信开发者工具 …

2023.12.14每日一题

2023.12.14 题目来源我的题解二维前缀和二维差分 题目来源 力扣每日一题;题序:2132 我的题解 哈哈哈哈!!!我不会,借鉴一下官方题解 二维前缀和二维差分 求二维前缀和,用于判断快速判断右下角…