初识mysql数据库之mysql数据库安装(centos)

目录

一、卸载不需要的环境

二、安装mysql yum源

三、安装mysql

四、登录mysql

1. 直接登录

2. 设置免密码登录

五、配置my.cnf

六、mysql登录时的一些选项介绍


一、卸载不需要的环境

要注意,在安装mysql数据库时,最好将用户切换为root,避免一些不必要的问题。当数据库安装好后,普通用户也可以使用的。

在安装数据库之前,大家最好先检查一下自己的linux机器中有没有不需要的环境,有的话就将它们给卸载掉。

如果大家不知道自己的linux中有哪些不必要的环境,大家可以用ps axj | grep mariadb”命令看自己的机器上有没有这个东西。mariadb其实就是mysql数据库下的一个分支。

在我的机器上面并不存在,所以无需卸载。如果大家的linux上有这个环境,就最好卸载一下。

以mysql举例,如果你的linux上有mysql,要想卸载它,第一步就是关闭mysql服务,输入“systemctl stop mysqld”命令就行了。

第二步就是要去卸载了。在你的linux中,一般都会有mysql对应的一些安装包,输入“rpm -pa | grep mysql”就可以查看到你的机器上的mysql安装包了。然后输入“rpm -pa | grep mysql | xargs yum -y remove”命令,用yum将这些安装包卸载。

执行完上面的步骤,其实你的linux中的对应环境就已经被卸载了。

二、安装mysql yum源

要按照mysql yum源,最好获取官方的yum源,打开“http://repo.mysql.com/”网站,就可以在上面看到很多mysql yum源了:

在安装时,最好选择与自己的系统版本一直的yum源,否则可能出现软件兼容的问题。要查看自己的系统版本,输入“cat /etc/redhat-release”命令查看:

上图中的意思就是CentOs 7.6版本的linux。

大家从上面的yum源的图中可以发现,由于网页的问题,里面的很多东西都没有显示出来,所以大家可以在该页面单机右键,选择查看网页源代码查看更详细的信息。

在这里面你可以看到有些yum源后面带有mysql57mysql80,这其实指的就是mysql5.7版本mysql8.0版本

在这里建议大家选择5.7的,因为这个版本是最常用的。

能看到如上界面后,就可以去找与自己的系统版本相对应的5.7了。因为我的系统是7.6版本,所以直接去找7.6版本即可。注意,你也可能找不到根据的版本号完全对应的yum源,此时就可以选择那个总的版本:

例如我的OS是7.6的,但是这里面没有7.6版本的yum源,所以就按照图中圈出来的7版本的yum源即可。

下载完毕后就可以着手准备按照mysql yum源了。打开你的linux,为了方便,大家可以创建一个文件夹用来存放安装包。然后在对应的目录下执行“rz”命令,将windows中的安装包上传到linux中:

上传完毕后,执行“rpm -ivh 安装包名”进行安装:

如果想确认自己是否安装成功,可以执行“ls /etc/yum.repos.d/ -l”查看当前机器可支持的yum源:

如果有图中的两个东西,就说明安装成功了。

为了确保万一,大家可以执行“yum list | grep mysql”查看一下安装的yum源能不能帮我们找到对应的mysql的内容:

如果可以查到,就会弹出很多东西,这里只截图了一部分,其实还有很多其他内容。此时就成功安装mysql yum源了,大家也可以将刚刚下载的安装包删除了。

三、安装mysql

准备好yum源后,就可以直接用yum安装了。输入“yum install -y mysql-community-server”进行安装。

在安装的过程中,大家可能会遇到两个问题。

第一个就是密钥过期的问题:

出现这个错误时,直接执行“rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022”命令,即可自动从网络中导入一条较新的密钥。执行完该命令后重新安装即可。

第二个问题就是安装的版本错误。这可能是因为大家在选择yum源时选择了错误的版本。卸载掉对应的yum源然后重新安装对应版本的yum源即可。

安装完成后,大家可以执行几个命令确认一下自己是否安装成功。

首先执行“ls /etc/my.cnf”命令,查看有没有对应文件

然后执行“which mysqld”命令,查看是否存在mysqld服务端

最后执行“which mysql”命令,查看是否存在mysql客户端

如果大家自己观察服务端的路径,就会发现它的路径是sbin,这其实就是指这个服务端只能由超级管理员,即root用户启动。root用户启动后,普通用户也是可以使用的。

当这三个东西都存在时,执行“systemctl start mysqld”命令,运行客户端。然后执行“ps axj | grep mysqld”查看该客户端是否启动:

此时就可以看到一个mysql服务跑起来了。

四、登录mysql

由于大家现在还没有学习mysql中的一些相关语句,包括用户操作等内容,所以在这里的登录是让root登录,并没有在mysql上新建账户。在这里简单介绍三种mysql的临时登录方法。

1. 直接登录

在一些比较新的mysql版本中,当你安装后就默认支持免密码登录的。大家可以尝试直接输入“mysql -uroot -p”,在弹出输入密码的页面后直接按回车,看能不能登录。

2. 设置免密码登录

输入“vim /etc/my.cnf”命令进入mysqld的配置文件。打开后在这个配置文件中添加“skip-grant-tables”选项,保存并退出:

该选项添加后就可以在登录时让mysql免密码直接登录。

修改配置文件后,输入“systemctl restart mysqld”命令重启数据库,此时输入"mysql -uroot -p"命令就可以登录mysql了。

注意,当你输入登录命令后,依然会跳出输入密码的界面,此时只需要直接按下回车键就可以登录了。

此时大家就可以输入“show databases;”命令查看该数据库中的当前内容了。

退出则直接输入“quit”命令即可。

五、配置my.cnf

这里讲解几个比较基础的mysql中的配置。首先用“vim /etc/my.cnf”命令打开配置文件。

第一个是可以修改mysql服务端使用的端口号。mysql的端口号在下载完后一般都是默认的3306,这个端口号是可以改的,在my.cnf配置文件中添加“port=端口号”即可。一般来讲,在大家未来到公司里面后,公司的数据库的端口号也是会修改的,不会使用默认端口号。

第二个就是设置服务端的编码格式。输入“character-set-server=utf8”,将服务端的编码格式设置为utf8。

第三个就是设置mysql后端用的存储引擎。输入“default-storage-engine=innodb”设置为innodb。

这里面的端口号为了避免修改默认端口号就设置的是3306,当然也可以设置为其他的。但是因为大家当前不太会使用mysql,为了避免未来出现使用上的一些问题,这里不建议修改端口号。

修改完配置文件后,同样的用"systemcl restart mysqld”命令重启mysqld服务即可。

还有一个东西大家可以设置,那就是开机自启动。在linux中输入“systemctl enable mysqld”“systemctl daemon-reload”命令,即可让mysqld实现开机自启动。但没什么意义,毕竟大家基本上都是使用的云服务器,是一直启动着没有关闭过的。

六、mysql登录时的一些选项介绍

mysql中是存在很多选项的,这里就简单介绍几个在登录mysql时可用的选项。

“-h”。-h选项是指定你要登录的主机,因为mysql是一个网络服务,所以它必定在某台主机上运行,因此可以带上-h选项指定你要登录哪台主机。

“-P”,-P选项是指你要登录的特定主机上的特定mysql所绑定的端口号

“-u”,表明你要用什么身份去登录

“-p”,表示需要输入密码登录

例如“mysql -h 127.0.0.1 -P 3306 -u root -p“,就表示要以root的身份登录ip地址为127.0.0.1的主机中的端口号为3306的mysql,且需要输入密码登录。

但如果你是在本地登录,就无需带-h和-P选项,因为这两个选项如果不带,则默认用127.0.0.1和配置文件中配置的端口号登录。因此可以简写为“mysql -u root -p”。

如果你设置了免密码登录,则在弹出输入密码的界面直接按回车即可。如果没有则正常输入密码登录。注意,在mysql中登录时密码是不会回显的,即你在输入密码时你输入密码的地方是空白,什么都看不到。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

git介绍和安装/git,github,gitee,gitlab区别/git使用流程/ git常用命令/git忽略文件

git介绍和安装 # 版本管理软件-1 对代码版本进行管理---》首页功能完成---》课程功能完成---》可以回退到某个版本-2 协同开发--》多人开发--》合并代码---》可能会有冲突,解决冲突# 版本管理软件:主流就两个-git:现在用的最多(学…

IMX6ULL系统移植篇-镜像烧写方法

一. 烧录镜像简介 本文我们就来学习:windows 系统下烧录镜像的方法。 如何使用 NXP 官方提供的 MfgTool 工具通过 USB OTG 口来 烧写系统。 二. windows下烧录镜像 1. 烧录镜像前准备工作 (1)从开发板上拔下 SD卡。 (2…

fatal error: ‘type_traits‘ file not found错误解决

错误如下 In file included from ../test_opencv_qt/main.cpp:1: In file included from ../../Qt/6.5.1/android_x86_64/include/QtGui/QGuiApplication:1: In file included from ../../Qt/6.5.1/android_x86_64/include/QtGui/qguiapplication.h:7: In file included from .…

springDatajpa动态sql根据时间范围将数据导出为excel并使用vue的按钮去触发

用到的技术点&#xff1a; 1.springDatajpa 2.EasyExcel 3.数据库 4.vue 前端实现&#xff1a; 1.创建按钮&#xff08;点击此按钮弹出填写导出条件的弹出框&#xff09; <el-button type"primary" round click"dialogVisible true"><svg-icon …

什么是Session

1、web中什么是会话 &#xff1f; 用户开一个浏览器&#xff0c;点击多个超链接&#xff0c;访问服务器多个web资源&#xff0c;然后关闭浏览器&#xff0c;整个过程称之为一个会话。 2、什么是Session &#xff1f; Session:在计算机中&#xff0c;尤其是在网络应用中&…

MySQL数据同步到ES的4种解决方案

一、背景 大家应该都在各种电商网站检索过商品&#xff0c;检索商品一般都是通过什么实现呢&#xff1f;搜索引擎Elasticsearch。那么问题来了&#xff0c;商品上架&#xff0c;数据一般写入到MySQL的数据库中&#xff0c;那么用于检索的数据又是怎么同步到Elasticsearch的呢&…

分布式定时任务框架 PowerJob

业务背景 1.1 为什么需要使用定时任务调度 &#xff08;1&#xff09;时间驱动处理场景&#xff1a;整点发送优惠券&#xff0c;每天更新收益&#xff0c;每天刷新标签数据和人群数据。 &#xff08;2&#xff09;批量处理数据&#xff1a;按月批量统计报表数据&#xff0c;批…

使用nodejs操作postgresql

环境准备 1 navicat premium 2 postgresql 14 装完上述软件后&#xff0c;远程连接上之后如下&#xff1a; 自己建立一个用户表users,然后随机生成一些数据即可 步骤 这里我将项目放到了gticode里&#xff0c;可以下载下来使用 https://gitcode.net/wangbiao9292/nodejs-p…

数据技术在金融行业有哪些应用_光点科技

随着信息技术的迅猛发展&#xff0c;大数据技术逐渐成为金融行业的重要工具。大数据技术的应用&#xff0c;不仅可以提高金融机构的运营效率&#xff0c;还能够提供更准确的风险评估和预测&#xff0c;从而为投资者和决策者提供更好的决策依据。 那么&#xff0c;大数据技术在…

Keil MDK编程环境下的 STM32 IAP下载(学习笔记)

IAP的引入 不同的程序下载方式 ICP ICP(In Circuit Programing)。在电路编程&#xff0c;可通过 CPU 的 Debug Access Port 烧录代码&#xff0c;比如 ARM Cortex 的 Debug Interface 主要是 SWD(Serial Wire Debug) 或 JTAG(Joint Test Action Group)&#xff1b; ISP ISP(I…

【VUE】ElementUI实现表格拖拽功能及行大图预览

一. 背景 elementui没自带的拖拽排序功能&#xff0c;所以需要借助第三方插件sortablejs 二. 步骤 安装 npm install sortablejs --save 引入 import Sortable from ‘sortablejs’ template文件应用 row-key填写唯一标识 id"dragTable"是为了通过document找到…

C++——命名空间(namespace)

目录 1. C语言命名冲突 2. 命名空间定义 3. 命名空间使用 可能大家在看别人写的C代码中&#xff0c;在一开始会包这个头文件&#xff1a;#include<iostream> 这个头文件等价于我们在C语言学习到的#include<stdio.h>&#xff0c;它是用来跟我们的控制台输入和输出…

利用Django路由项的别名(name)对路由进行反向解析

在Django的函数path()中&#xff0c;可以给一条路由进行命名&#xff0c;然后在视图函数或模板HTML文件中进行调用&#xff0c;这样的好处是&#xff1a;只要路由的name不变&#xff0c;那么修改了URL具体的路由&#xff0c;也不用去更改视图函数或模板HTML中的相关代码&#x…

LNMP服务搭建

目录 一、安装Nginx 1.关闭防火墙和安全机制 2.安装依赖包 3.创建运行用户 4.编译安装并安装 5.优化路径 6. 添加 Nginx 系统服务 7.赋权并重启服务 二、安装Mysql数据库 1、安装Mysql环境依赖包 2.创建运行用户 3.编译安装 4.修改mysql 配置文件 5.更改mysql安装目录和…

Linux服务器同步Windows目录同步-rsync

前言 最近需要&#xff0c;Linux的服务器同步Windows的一个目录。查了下&#xff0c;大概有三种方法&#xff1a;网盘同步&#xff1b;rsync同步&#xff1b;挂载目录。 网盘同步&#xff0c;可以选择搭建一个Nextcloud 。但是问题在于&#xff0c;我需要的是&#xff0c;客户…

前端开发两年半,我裸辞了

☀️ 前言 一晃两年半过去了&#xff0c;我离开了我的第一份前端开发工作&#xff0c;当你看到这篇文章&#xff0c;我已经离职两个月了&#xff0c;目前仍在艰难求职中&#xff0c;想记录分享一下我的经历&#xff0c;感兴趣的可以继续往下看&#xff0c;希望能给大家一些启示…

Objective-C 混用UITabBar与UINavigation

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、pandas是什么&#xff1f;二、使用步骤 1.引入库2.读入数据总结 前言 混用UITabBar与UINavigation做app&#xff0c;tab和nav&#xff0c;有时候显示有时候…

03 Web全栈 浏览器内置对象/事件/ajax

浏览器是一个JS的运行时环境&#xff0c;它基于JS解析器的同时&#xff0c;增加了许多环境相关的内容&#xff0c;用一张图表示各个运行环境和JS解析器的关系如下&#xff1a; 我们把常见的&#xff0c;能够用JS这门语言控制的内容称为一个JS的运行环境&#xff0c;常见的运行环…

专业科普:什么是单片机?

一、什么是单片机 单片机诞生于20世纪70年代末&#xff0c;它是指一个集成在一块芯片上的完整计算机系统。单片机具有一个完整计算机所需要的大部分部件&#xff1a;CPU、内存、内部和外部总线系统&#xff0c;目前大部分还会具有外存。同时集成诸如通讯接口、定时器&#xff…

Edge浏览器可以多开吗?

问答链接&#xff1a;Edge浏览器可以多开吗&#xff1f; 可以。 如果你的edge浏览器是默认路径安装的&#xff0c;那么打开命令提示符窗口输入以下两条命令即可启动一个数据完全隔离的edge浏览器。 mkdir C:\logs001 "C:\Program Files (x86)\Microsoft\Edge\Applicati…