【MySQL 系列】MySQL 起步篇

news/2024/4/13 12:13:30/文章来源:https://blog.csdn.net/weixin_45187434/article/details/136548435

MySQL 是一个开放源代码的、免费的关系型数据库管理系统。在 Web 开发领域,MySQL 是最流行、使用最广泛的关系数据库。MySql 分为社区版和商业版,社区版完全免费,并且几乎能满足全部的使用场景。由于 MySQL 是开源的,我们还可以根据自己的需求,定制开发自己的特定版本。


文章目录

        • 1、MySQL 简介
          • 1.1、数据库介绍
          • 1.2、MySQL 简介
          • 1.3、MySQL 版本
        • 2、安装 MySQL 数据库
        • 3、连接 MySQL 数据库
          • 3.1、使用 MySQL 命令行客户端
          • 3.2、使用 Navicat 连接 MySQL
        • 4、MySQL 示例数据库
          • 4.1、Employees 示例数据库
          • 4.2、World 示例数据库
          • 4.3、Sakila 示例数据库


1、MySQL 简介

MySQL 是一个数据库管理系统。如果我们要了解 MySQL 是什么,我们首先需要了解什么是数据库。

1.1、数据库介绍

顾名思义,数据库就是存档某些数据的仓库。但是这个仓库不是一个实体仓库,也不存储实体物品,而是存放数据。比如我们常见的:

  • 我们在大型超市购物时,我们购买的商品的价格和折扣等信息就存在一个数据库中。
  • 我们手机上的联系人信息是一个列表,这个列表数据也存在一个数据库中。
  • 电子商务网站中的商品的库存和价格信息也存在于服务器的数据库中。
  • 汽车 4S 店的服务客户的记录信息也会存储在一个数据库中。

可以说,在现在的信息化系统中,数据库无处不在。

数据库是一个以某种有组织的方式存储的数据集合。当人们收集了大量的数据后,应该把它们保存起来进一步的处理,进一步地抽取有用的信息。现在人们借助计算机和数据库技术科学地保存了大量的数据,以便更好地利用这些数据资源。

1.2、MySQL 简介

MySQL 是一个开放源代码的、免费的关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司。

MySQL 官网:https://www.mysql.com/

在 Web 开发领域,MySQL 是最流行、使用最广泛的关系数据库。

目前 MySQL 被广泛地应用在 Internet 上的大中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了 MySQL 作为网站数据库。

image-20240304154003702

MySQL 的海豚标志的名字叫 “sakila”,它是由 MySQL AB 的创始人从用户在 “海豚命名” 的竞赛中建议的大量的名字表中选出的。获胜的名字是由来自非洲斯威士兰的开源软件开发者 Ambrose Twebaze 提供。根据 Ambrose 所说,Sakila 来自一种叫 SiSwati 的斯威士兰方言,也是在 Ambrose 的家乡乌干达附近的坦桑尼亚的 Arusha 的一个小镇的名字。

2008 年 1 月 16 日 MySQL AB 被 Sun 公司收购。而 2009 年,SUN 又被 Oracle 收购。就这样如同一个轮回,MySQL 成为了 Oracle 公司的另一个数据库项目。

MySQL 是数据库的一种,具有数据库的通用特征,同时,比起其他类型的数据库,它还具有自己鲜明的特点。

MySQL 是一个小型的开源的关系型数据库管理系统。与其他大型数据库管理系统例如 Oracle、DB2、SQL Server 等相比,MySQL 规模小,功能有限,但是它体积小、速度快、成本低,且它提供的功能对稍微复杂的应用已经够用,这些特性使得 MySQL 成为世界上最受欢迎的开放源代码数据库。

MySQL 是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL 数据库系统使用最常用的数据库管理语言——结构化查询语言(SQL)进行数据库管理。

由于 MySQL 是开放源代码的,因此任何人都可以在 General Public License 的许可下下载并根据个性化的需要对其进行修改。MySQL 因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL 是管理内容最好的选择。

1.3、MySQL 版本

针对不同的用户,MySQL 分为两个不同的版本:

  • MySQL 社区版:该版本完全免费,并且几乎能满足全部的使用场景。由于 MySQL 是开源的,我们还可以根据自己的需求,定制开发自己的特定版本;
  • MySQL 企业版服务器:为企业提供数据库应用,支持 ACID 事务处理,提供完整的提交、回滚、崩溃恢复和行政锁定功能。需要付费使用,官方提供技术支持。

对绝大多数应用而言,MySQL 社区版都能满足。

MySQL 可以在 UNIX、Linux、Windows 等各种平台上运行。并且不管是服务器还是桌面版本的 PC,都可以安装 MySQL,并且 MySQL 在各个平台都很可靠且速度快。

如果您开发网站或 Web 应用程序,MySQL 是一个不错的选择。MySQL 是 LAMP 堆栈的重要组件。 LAMP 网站架构是目前国际流行的 Web 框架, 其中包括 Linux、Apache、MySQL 和 PHP。


2、安装 MySQL 数据库

下载 MySQL 前往MySQL官网(https://dev.mysql.com/downloads/)下载适用于您操作系统的 MySQL 安装包。

安装 MySQL 按照安装包提示,安装 MySQL 数据库,并根据需要进行配置。

  • 在 Windows 上安装 MySQL
  • 在 MacOS 上安装 MySQL
  • 在 CentOS 上安装 MySQL
  • 在 Ubuntu 上安装 MySQL

3、连接 MySQL 数据库

当我们安装好 MySQL 服务器后,就可以使用任何客户端程序(例如 mysql 命令行客户端和 Navicat)连接到 MySQL 服务器。

命令行不需要安装额外的程序,图形界面的程序更易于使用。我们可以根据自己的实际情况选择使用命令行程序还是图形界面的客户端连接到 MySQL 服务器。

3.1、使用 MySQL 命令行客户端

mysql 命令行客户端位于 MySQL 安装文件夹的 bin 目录中,打开 cmd / 终端 命令行窗口,使用命令导航到 MySQL 服务器 bin 目录下,使用以下命令连接到 MySQL 服务器:

./mysql -u root -p

-u root 意味着使用 root 用户连接到 MySQL 服务器; -p 指示 mysql 提示输入密码。

然后根据提示输入 root 帐户的密码,并按下回车键。验证通过后,显示以下输出代表进入了 MySQL 控制台:

mysql>

链接成功后,使用 SHOW DATABASES 显示当前服务器中的所有数据库:

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sakila             |
| sys                |
| world              |
+--------------------+
6 rows in set (0.00 sec)

至此,使用 MySQL 命令行客户端成功连接到了 MySQL 服务器,并查询了所有的服务器。

3.2、使用 Navicat 连接 MySQL

Navicat 是一款功能强大的数据库管理工具,具有直观的用户界面和丰富的功能。使用 Navicat 连接数据库需要按照以下步骤操作:

步骤一、下载和安装 Navicat:打开你的 Web 浏览器,访问 Navicat 的官方网站,在官方网站上找到并下载适合你操作系统的 Navicat版本(Windows、macOS、Linux);

步骤二、启动 Navicat:完成安装后,双击 Navicat 图标启动该程序;

步骤三、创建数据库连接:在 Navicat 的起始页面,点击「连接」按钮或在顶部菜单栏选择「连接」,然后选择你要连接的数据库类型(例如 MySQL、PostgreSQL、SQL Server 等);

image-20240304173226339

在「新连接」对话框中,输入连接数据库所需的信息,包括:

  • 连接名:可任意命名,以方便识别这个连接。
  • 主机名/IP地址:数据库服务器的主机名或IP地址。
  • 端口:数据库服务器的通信端口,默认情况下MySQL使用3306。
  • 用户名:连接数据库的用户名。
  • 密码:连接数据库的密码。
  • 数据库:连接的数据库名称,如果需要连接特定数据库,请填写该字段。

步骤四、测试连接,输入完连接信息后,点击“测试连接”按钮,确保连接信息填写正确。如果一切正常,点击「确定」保存这个连接。

步骤五:连接数据库,在 Navicat 主界面选择你刚刚创建的连接,双击该连接或点击「连接」按钮。成功连接后,你将能够查看数据库中的表格和其他对象,并可以执行相应的数据库管理操作。


4、MySQL 示例数据库

MySQL 官方提供了多个示例数据库,在MySQL的学习、开发和实践中具有非常重要的作用,能够帮助初学者更好地理解和应用 MySQL 的各种功能和特性。

官方示例数据库地址:https://dev.mysql.com/doc/index-other.html

4.1、Employees 示例数据库

Employees 数据库:这是一个非常大的数据集,包含了 6 张表,总共有 400 万条数据记录,可以用于测试和验证 MySQL 的性能和处理大数据量的能力。 数据集包含了员工、职位、部门等信息,以及一套测试和验证用的脚本和 SQL 语句。

Employees 数据库下载地址:https://github.com/datacharmer/test_db

首先,通过上述地址进行下载,下载后修改 employees.sql 文件,将相关的 source 语句相关文件目录修改为压缩包文件解压后的绝对地址:

vi employees.sql
---
SELECT 'LOADING departments' as 'INFO';
# 修改为绝对地址(source 后的都要修改)
source load_departments.dump ;
...

接下来,进入 MySQL 后使用 source 命令执行 employees.sql:

-- 需要修改为 employees.sql 所在的绝对地址
source employees.sql ;

等待数秒后即全部导入成功。

mysql> USE employees ;
Database changed
mysql> SHOW TABLES;
+----------------------+
| Tables_in_employees  |
+----------------------+
| current_dept_emp     |
| departments          |
| dept_emp             |
| dept_emp_latest_date |
| dept_manager         |
| employees            |
| salaries             |
| titles               |
+----------------------+
8 rows in set (0.01 sec)
4.2、World 示例数据库

MySQL 官方网站提供的示例数据库 world Database,包含了一个关于国家、城市和语言的实际数据集。该数据库包含了以下三个表:

  • country:该表包含了全球所有国家的信息,包括国家名称、首都、人口、面积、所属洲别等信息;
  • city:该表包含了世界各国的城市信息,包括所属国家、城市名称、人口等信息;
  • countrylanguage:该表包含了全球各国语言的信息,包括所属国家、语言名称、官方语言等信息。

通过这三个表之间的连结和查询,可以实现各种复杂的跨表查询功能,例如根据某个国家的首都查询该国家的语言、或者查询某个语言在全球范围内被哪些国家使用等等。

world Database 提供了一个非常实用的数据集,可以帮助开发人员更好地理解 MySQL 的查询语句、表关联和查询优化等概念。同时,通过该数据集,用户还可以编写实际的 SQL 查询语句以及应用程序,提高自己的 MySQL 编程技能。

4.3、Sakila 示例数据库

Sakila 示例数据库是使用最广泛的示例数据库之一,也是最好的示例数据库之一。Sakila 示例数据库最初由 MySQL AB 文档团队的前成员 Mike Hillyer 开发。它旨在提供一个标准模式,可用于书籍、教程、文章等中的示例演示。

Sakila 数据库为 DVD 租赁商店业务建模,其中包含影片、演员、影片与演员关系等内容,以及连接影片、商店和租赁业务的中央库存表。

作为最好的示例数据库之一,Sakila 数据库已经被移植 PostgreSQL, Oracle, DB2, SQLite 等平台。

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

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

相关文章

ChatGPT数据分析应用——同期群分析

ChatGPT数据分析应用——同期群分析 ​ 同期群分析在一定程度上属于分组分析的一个变种。顾名思义,同期群就是相同时期的群体,同期群分析就是针对相同时期的群体展开分析。接下来我们让ChatGPT解释这个方法的概念并提供相应的案例。发送如下内容给ChatG…

Python高级一

一、介绍 1、特点 面向对象 对象:对客观事物的抽象 对一个具体事务的存在,现实生活中可以看得见摸得着的 可以直接使用的 2、类和对象的关系 类:对对象的抽象 具有相似内部状态和运动规律的实体的集合(或统称为抽象) 具有相同属性和行…

nicegui学习使用

https://www.douyin.com/shipin/7283814177230178363 python轻量级高自由度web框架 - NiceGUI (6) - 知乎 python做界面,为什么我会强烈推荐nicegui 秒杀官方实现,python界面库,去掉90%事件代码的nicegui python web GUI框架-NiceGUI 教程…

redis最新版本在Windows系统上的安装

一、说明 这次安装操作主要是根据redis官网说明,一步步安装下来的,英语比较好的同学,可以直接看文章底部的超链接1,跳到官网按步操作即可。 目前redis的最新稳定版本为redis7.2。 二、Windows环境改造 Redis在Windows上不被官方…

设置Matlab2022a断点查看参数变化

Matlab2022a设置断点,查看参数变化 本文使用的是下载好的matlab2022a软件,下载加安装matlab预计1小时(百度网盘加速)。需要的安装包的评论。 安装好的matlab界面如下: 接下来,编辑一个.m文件,…

【Linux篇】Linux下利用git同步到gitee

💛不要有太大压力🧡 💛生活不是选择而是热爱🧡 💚文章目录💚 1. 克隆仓库到本地:git clone2. 添加:git add3. 提交:git commit4. 推送:git push5. 查看日志&a…

EMMC的介绍

1、emmc的含义 eMMC (Embedded Multi Media Card)是MMC协会订立、主要针对手机或平板电脑等产品的内嵌式存储器标准规格。eMMC在封装中集成了一个控制器,提供标准接口并管理闪存,使得手机厂商就能专注于产品开发的其它部分,并缩短向市场推出产…

linux救援模式恢复

只需要在这里的shell键入一条命令: xfs_repair -v -L /dev/dm-0 命令为修复磁盘命令 执行完成后即可重启,恢复正常。 如果输入xfs_repair -v -L /dev/dm-0 ,报 no such file or directionary 的错误,是没有这个设备。 输入jou…

李沐动手学习深度学习——3.6练习

本节直接实现了基于数学定义softmax运算的softmax函数。这可能会导致什么问题?提示:尝试计算exp(50)的大小。 可能存在超过计算机最大64位的存储,导致精度溢出,影响最终计算结果。 本节中的函数cross_entropy是根据交叉熵损失函数…

【Redis项目实战】使用Springcloud整合Redis分布式锁+RabbitMQ技术实现高并发预约管理处理系统

🎉🎉欢迎光临🎉🎉 🏅我是苏泽,一位对技术充满热情的探索者和分享者。🚀🚀 🌟特别推荐给大家我的最新专栏《Redis实战与进阶》 本专栏带你Redis从入门到入魔 这是苏泽的个…

SAR ADC学习笔记(4)

CDAC电容阵列 一、电容失配 二、电容失配对CDAC线性度的影响 1.电容失配对DNL的影响 2.电容失配对INL的影响 三、分段结构的CDAC 四、CDAC开关切换方案&#xff1a;传统开关切换策略 第一次比较阶段&#xff1a;如果VP(1)-VN(1)<0 第一次比较阶段&#xff1a;如果VP(1)-VN…

Gemini 初体验

1 使用体验 同样需要科学上网。速度很快&#xff0c;而且还不要钱&#xff0c;据说使用太多可能被限流。对于小语种翻译效果比 GPT-4 好&#xff0c;其它还没测试。可通过 ChatBox 界面调用&#xff0c;也可使用 Python 调用。 2 使用 ChatBox 方式调用 在 build with gemin…

Linux基础命令[12]-cat

文章目录 1. cat 命令说明2. cat 命令语法3. cat 命令示例3.1 不加参数3.2 -n&#xff08;显示行号&#xff09;3.3 -E&#xff08;行尾加 $&#xff09;3.4 -s&#xff08;多行并一行&#xff09; 4. 总结 1. cat 命令说明 cat&#xff1a;用来查看文件内容&#xff0c;因为 …

STM32 学习9 中断、外部中断及定时器中断

STM32 学习9 中断、外部中断及定时器中断 一、STM32中断介绍一、STM32中断介绍1. 什么是中断&#xff1f;2. 中断在嵌入式系统中的作用和重要性3. STM32中断的概述 4. 中断的优先级4.1 中断优先级级别4.2 中断优先级分类&#xff08;1&#xff09;硬件优先级&#xff08;2&…

Effective C++ 学习笔记 条款16 成对使用new和delete时要采取相同形式

以下动作有什么错&#xff1f; std::string *stringArray new std::string[100]; // ... delete stringArray;每件事看起来都井然有序&#xff0c;使用了new&#xff0c;也搭配了对应的delete。但还是有某样东西完全错误&#xff1a;你的程序行为未定义。至少&#xff0c;str…

聊一聊ThreadLocal的原理?

1.ThreadLocal创建方式 ThreadLocal<String> threadlocal1 new ThreadLocal(); ThreadLocal<String> threadlocal2 new ThreadLocal(); ThreadLocal<String> threadlocal3 new ThreadLocal(); 2.首先介绍一下&#xff0c;ThreadLocal的原理&#xff1a; 如…

buuctf EasyBypass --不会编程的崽

buu后边的题有些确实难&#xff0c;有些其实也没那么复杂。昨天做一道异或绕过的题&#xff0c;现在还没看懂QAQ 先来一题简单的吧。哎&#xff0c;随缘更新吧 <?phphighlight_file(__FILE__);$comm1 $_GET[comm1]; $comm2 $_GET[comm2];if(preg_match("/\|\|\\|\…

开源分子对接程序rDock使用方法(1)-Docking in 3 steps

欢迎浏览我的CSND博客&#xff01; Blockbuater_drug …点击进入 文章目录 前言一、Docking in 3 steps 标准对接rDock 的基本对接步骤及注意事项 二、 三步对接案例Step 1. 结构文件准备Step 2. 产生对接位点Step 3. 运行分子对接3.1 检查输入文件3.2 测试-只进行打分3.3 运行…

Finetuned Multimodal Language Models Are High-Quality Image-Text Data Filters

Finetuned Multimodal Language Models Are High-Quality Image-Text Data Filters 相关链接&#xff1a;arxiv 关键字&#xff1a;Multimodal Language Models、Image-Text Data Filtering、Fine-tuning、Quality Assessment Metrics、Data Quality 摘要&#xff1a; 我们提出…

算法Day05_707.设计链表

推荐阅读 算法day01_ 27. 移除元素、977.有序数组的平方 算法day02_209.长度最小的子数组 算法day03_ 59.螺旋矩阵II 算法Day04_203.移除链表元素 目录 推荐阅读707.设计链表题目思路解法单链表解法双链表解法 707.设计链表 题目 你可以选择使用单链表或者双链表&#xff0c;设…