详解MySQL客户端/服务器运行架构

 更新时间:2022年09月30日 08:32:15   作者:1个俗人  
这篇文章主要介绍了详解MySQL客户端/服务器运行架构,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下

前言

之前对MySQL的认知只限于会写些SQL,本篇开始进行对MySQL进行深入的学习,记录和整理下自己对MySQL不熟悉的地方。如果有需要可以关注我的专栏一起学习,共同进步!关于mysql的安装就不说了,直接从mysql的客户端/服务器运行架构开始学习。Let′s go~

MySQL客户端/服务器架构

MySQL其实跟我们平时使用的程序一样,是由两部分组成的,一部分是客户端程序,一部分是服务器程序。

  • MySQL服务器程序直接和我们存储的数据打交道,客户端啊连接服务器,发送增删改查的请求,服务器操作维护的数据响应请求。MySQL服务器程序的进程也被称为MySQL数据库实例。
  • MySQL客户端都需要用户名和密码才能登录,登录之后才能给服务器发送请求来操作某些数据。

我们日常使用MySQL的情景一般是这样的

  • 启动MySQL服务器程序。
  • 启动MySQL客户端程序并连接到服务器程序。
  • 在客户端程序中输入一些sql命令语句作为请求发送到服务器程序,服务器程序收到这些请求后,会根据请求的内容来操作具体的数据并向客户端返回操作结果。

MySQL客户端连接服务器

在成功启动MySQL服务器程序后,就可以启动客户端程序来连接到这个服务器了。我们可以通过mysql可执行文件与服务器程序交互,进行发送请求并接收服务器的处理结果。启动格式如下:

mysql -h主机名 -u用户名 -p密码

示例:

mysql -hlocalhost -uroot -p123456

出现如下界面就表示连接成功了。

注意事项:最好不要在一行命令中输入密码,我们直接输入的是明文可能会被同一台机器上的其他用户看到,我们可以通过如下命令分为两步进行操作

mysql -hlocalhost -uroot -p

按回车之后才会提示输入密码。

客户端与服务器连接的过程

运行着的服务器程序和客户端程序本质上都是计算机上的一个进程,所以客户端进程向服务器进程发送请求并得到响应的过程本质上是一个进程间通信的过程。MySQL支持三种客户端进程和服务器进程的通信方式:

TCP/IP

真实环境中,数据库服务器进程和客户端进程可能运行在不同的主机中,它们之间必须通过网络来进行通信。MySQL采用TCP作为服务器和客户端之间的网络通信协议。我们可以通过IP地址 + 端口号的方式来与这个进程连接,命令行中添加-P(大写P)参数来指定端口号,格式如下:

mysql -hlocalhost -P3306 -uroot -p123456

MySQL服务器默认监听3306端口;

命名管道和共享内存

这种通信方式是windows操作系统中的两种进程间通信方式;如果没听说或可以忽略,不重要。

Unix域套接字文件

这种方式要求客户端和服务器运行在同一台类Unix的操作系统上;

小结

MySQL采用客户端/服务器架构,用户通过客户端程序发送增删改查需求,服务器程序收到请求后处理,并且把处理结果返回给客户端。

MySQL客户端可以通过TCP/IP、命名管道和共享内存、Unix域套接字文件三种方式进行连接MySQL服务器,主要掌握TCP/IP的方式就可以。

到此这篇关于详解MySQL客户端/服务器运行架构的文章就介绍到这了,更多相关MySQL客户端内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • mysql出现ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘localhost‘ (10061)的解决方法

    mysql出现ERROR 2003 (HY000): Can‘t connect to MySQL ser

    本文主要介绍了mysql出现ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘localhost‘ (10061)的解决方法,具有一定的参考价值,感兴趣的可以了解一下
    2025-03-03
  • mysql group by 对多个字段进行分组操作

    mysql group by 对多个字段进行分组操作

    这篇文章主要介绍了mysql group by 对多个字段进行分组操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-09-09
  • MySQL架构体系知识点总结

    MySQL架构体系知识点总结

    在本篇内容里我们给大家整理了关于MySQL架构体系的相关知识点内容以及相关实例,需要的朋友们学习下。
    2019-02-02
  • mysql数据库批量复制单条数据记录

    mysql数据库批量复制单条数据记录

    在开发数据库应用时,批量操作是一项常见的需求,无论是数据迁移、备份还是更新,理解如何在MySQL中批量复制单条数据都至关重要,本文将深入探讨这一过程,并提供代码示例,帮助你更好地理解这一概念
    2025-02-02
  • MySQL之常用的MySQL优化工具解读

    MySQL之常用的MySQL优化工具解读

    这篇文章主要介绍了MySQL之常用的MySQL优化工具,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • winx64下mysql5.7.19的基本安装流程(详细)

    winx64下mysql5.7.19的基本安装流程(详细)

    这篇文章主要介绍了winx64下mysql5.7.19的基本安装流程,需要的朋友可以参考下
    2017-10-10
  • MySQL乱码问题终极指南

    MySQL乱码问题终极指南

    为了让大家尽量在工作中少受或者不受乱码的困扰,这篇文章主要为大家分享了MySQL乱码问题终极指南,感兴趣的小伙伴们可以参考一下
    2016-04-04
  • Mysql 如何查询时间段交集

    Mysql 如何查询时间段交集

    这篇文章主要介绍了Mysql 查询时间段交集的方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • 浅谈MySQL使用笛卡尔积原理进行多表查询

    浅谈MySQL使用笛卡尔积原理进行多表查询

    这篇文章主要介绍了浅谈MySQL使用笛卡尔积原理进行多表查询, 文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • 小白安装登录mysql-8.0.19-winx64的教程图解(新手必看)

    小白安装登录mysql-8.0.19-winx64的教程图解(新手必看)

    这篇文章主要介绍了安装登录mysql-8.0.19-winx64的教程图解,非常适合新手学习参考,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-03-03

最新评论