【Hello mysql】 数据库基础(二)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 【Hello mysql】 数据库基础(二)

mysql安装

卸载不要的环境

某些云服务器可能会自带一些数据库 比如说mariadb或者mysql等

为了保证接下来教学环境的同步 我们首先要先卸载这些自带的数据库并且安装一个同版本的数据库

首先我们查找下是否有mysql或者是mariadb的进程在运行

博主这里没有正在运行中的mysql进程 如果大家检查的时候遇到了需要先停止这些进程的运行 要使用到下面的指令

systemctl stop mariadb.service

接着我们检查下是否有这些软件的安装包的存在

检查之后我们就发现了mariadb安装包的存在

之后我们使用卸载程序进行卸载即可

rpm -qa | grep mariadb | xargs yum remove -y

xargs是什么

它是一个卸载程序 它会将管道中传递过来的内容以命令行参数的形式传递给yum remove

此时我们原先的环境就卸载完毕了

获取mysql官方yum源

怎么下

Mysql官方yum源地址

打开之后我们可以看到一个这样子的画面

这里有许多不同的mysql版本供我们下载 当然我们要结合自己的系统来进行下载安装

我们可以通过下面的指令来查看自己的系统版本

cat /etc/redhat-release

(centos 7.6)

而我们选择常用的mysql5.7版本 在网站中我们可以发现mysql5.7版本中并没有适配centos7.6版本的软件(el就代表的是centos)

所以说我们直接选择最后一个 适配所有centos7版本的mysql

下载完毕之后我们直接拷贝一份放到桌面上 接着使用rz指令来上传到我们的linux系统中

怎么安装

我们下载了安装包之后还需要更新yum源仓库

通过下面的指令我们可以查看更新之前的yum源

ls /etc/yum.repos.d/ -l

我们可以看到并没有mysql的yum源

接着可以通过下面的指令来更新mysql的yum源

rpm -ivh mysql57-community-release-el7.rpm 

更新之后再查看我们就会发现mysql出现再yum源仓库里面了

之后我们就能够使用yum来查看mysql的相关软件

安装mysql

安装mysql的过程十分简单 只需要一行指令就可以

yum install -y mysql-community-server

如果说安装过程中我们遇到了密钥过期的问题

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安装成功?

在Linux下一切皆文件 我们可以通过which指令来查看系统中是否有mysql和mysqld相关的文件

注意图上的目录 我们可以发现mysqld是在sbin(super bin)目录下而mysql是在bin目录下

事实上像mysqld这种网络服务器一般都会在sbin目录下都需要较高的管理员权限才能开启

之后我们可以通过systemctl来启动mysqld服务器 启动完毕之后再查看进程就能够看见mysql了

我们在之间说过 mysql是一个网络服务器 所以说当我们启动mysqld服务器之后查看系统中的网络进程也能够查到mysql(它底层默认是tcp协议)

登录mysql

我们登录mysql的时候需要一个登录密码 可是在安装mysql的时候我们并没有设置这个密码

这个时候我们要先找到mysql 的配置文件 在配置文件中加上本次登录不需要密码的选项

mysql的配置路径一般是这个

/etc/my.cnf

接着我们使用vim编辑器编辑这个文件 在文件的最后一行加上如下的文字就可以了

skip-grant-tables

紧接着我们重启下mysql服务器就可以免密码登录了

登录的指令是

mysql -u root -p

其中u是user的意思 p是password的意思

mysql的一些配置

和上面设置跳过密码一样 我们通过

vim /etc/my.cnf

来修改mysql的配置文件

目前我们增加的配置主要有三个

分别是

  1. 默认绑定端口号3306
  2. 默认编码格式使用utf-8
  3. 默认搜索引擎使用innodb

连接mysql

连接mysql一般使用下面的指令

mysql -h 127.0.0.1 -P 3306 -u root -p // 注意第一个P要大写

在学习过网络部分之后我们很简单就能猜到上面四个参数的含义

  • -h host 主机号
  • -P port 端口号
  • -u user 用户
  • -p password 密码

如果我们不写-h的话默认就是本地环回

如果我们不写-P的话默认就是3306端口

最后我们使用quit指令退出mysql

服务器 数据库 表关系

数据库和表在Linux中的存在形式

我们之前在配置mysql服务器的时候发现里面有这样的一个字段

它的含义是我们所有的数据都保存在 /var/lib/mysql 这个路径当中

我们展示这个目录中的所有内容可以发现下面的场景

之后我们登录mysql 查看一下mysql的database

对比观察下这两张图我们不难发现 数据库中的database 在Linux服务器中都有一个对应的目录文件

也就是说创建数据库的本质就是在Linux服务器上创建一个目录创建表的本质就是在Linux服务器上创建一个文件

服务器 数据库 表关系

  • 所谓安装数据库服务器 只是在机器上安装了一个数据库管理系统程序 这个管理程序可以管理多个数据库 一般开发人员会针对每一个应用创建一个数据库(db)
  • 为保存应用中实体的数据 一般会在数据库中创建多个表 以保存程序中实体的数据
  • 它们之间的关系如下图

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
22天前
|
NoSQL 关系型数据库 MySQL
微服务架构下的数据库选择:MySQL、PostgreSQL 还是 NoSQL?
在微服务架构中,数据库的选择至关重要。不同类型的数据库适用于不同的需求和场景。在本文章中,我们将深入探讨传统的关系型数据库(如 MySQL 和 PostgreSQL)与现代 NoSQL 数据库的优劣势,并分析在微服务架构下的最佳实践。
|
19天前
|
存储 SQL 关系型数据库
MySQL的安装&数据库的简单操作
本文介绍了数据库的基本概念及MySQL的安装配置。首先解释了数据库、数据库管理系统和SQL的概念,接着详细描述了MySQL的安装步骤及其全局配置文件my.ini的调整方法。文章还介绍了如何启动MySQL服务,包括配置环境变量和使用命令行的方法。最后,详细说明了数据库的各种操作,如创建、选择和删除数据库的SQL语句,并提供了实际操作示例。
59 13
MySQL的安装&数据库的简单操作
|
7天前
|
关系型数据库 Unix MySQL
MySQL是一种关系型数据库管理系统
MySQL是一种关系型数据库管理系统
18 2
|
9天前
|
Oracle NoSQL 关系型数据库
主流数据库对比:MySQL、PostgreSQL、Oracle和Redis的优缺点分析
主流数据库对比:MySQL、PostgreSQL、Oracle和Redis的优缺点分析
34 2
|
15天前
|
SQL 关系型数据库 MySQL
创建包含MySQL和SQLServer数据库所有字段类型的表的方法
创建一个既包含MySQL又包含SQL Server所有字段类型的表是一个复杂的任务,需要仔细地比较和转换数据类型。通过上述方法,可以在两个数据库系统之间建立起相互兼容的数据结构,为数据迁移和同步提供便利。这一过程不仅要考虑数据类型的直接对应,还要注意特定数据类型在不同系统中的表现差异,确保数据的一致性和完整性。
25 4
|
24天前
|
存储 SQL 关系型数据库
使用MySQL Workbench进行数据库备份
【9月更文挑战第13天】以下是使用MySQL Workbench进行数据库备份的步骤:启动软件后,通过“Database”菜单中的“管理连接”选项配置并选择要备份的数据库。随后,选择“数据导出”,确认导出的数据库及格式(推荐SQL格式),设置存储路径,点击“开始导出”。完成后,可在指定路径找到备份文件,建议定期备份并存储于安全位置。
177 11
|
2月前
|
SQL 关系型数据库 MySQL
【揭秘】MySQL binlog日志与GTID:如何让数据库备份恢复变得轻松简单?
【8月更文挑战第22天】MySQL的binlog日志记录数据变更,用于恢复、复制和点恢复;GTID为每笔事务分配唯一ID,简化复制和恢复流程。开启binlog和GTID后,可通过`mysqldump`进行逻辑备份,包含binlog位置信息,或用`xtrabackup`做物理备份。恢复时,使用`mysql`命令执行备份文件,或通过`innobackupex`恢复物理备份。GTID模式下的主从复制配置更简便。
190 2
|
2月前
|
弹性计算 关系型数据库 数据库
手把手带你从自建 MySQL 迁移到云数据库,一步就能脱胎换骨
阿里云瑶池数据库来开课啦!自建数据库迁移至云数据库 RDS原来只要一步操作就能搞定!点击阅读原文完成实验就可获得一本日历哦~
|
2月前
|
关系型数据库 MySQL 数据库
RDS MySQL灾备服务协同解决方案构建问题之数据库备份数据的云上云下迁移如何解决
RDS MySQL灾备服务协同解决方案构建问题之数据库备份数据的云上云下迁移如何解决
|
25天前
|
存储 SQL 关系型数据库
一篇文章搞懂MySQL的分库分表,从拆分场景、目标评估、拆分方案、不停机迁移、一致性补偿等方面详细阐述MySQL数据库的分库分表方案
MySQL如何进行分库分表、数据迁移?从相关概念、使用场景、拆分方式、分表字段选择、数据一致性校验等角度阐述MySQL数据库的分库分表方案。
109 14
一篇文章搞懂MySQL的分库分表,从拆分场景、目标评估、拆分方案、不停机迁移、一致性补偿等方面详细阐述MySQL数据库的分库分表方案

热门文章

最新文章