服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Mysql - 详解MySQL客户端/服务器运行架构

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

2022-11-23 14:141个俗人 Mysql

这篇文章主要介绍了详解MySQL客户端/服务器运行架构,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下

前言

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

MySQL客户端/服务器架构

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

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

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

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

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

MySQL客户端连接服务器

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

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

示例:

?
1
mysql -hlocalhost -uroot -p123456

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

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

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

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客户端内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://juejin.cn/post/7118954918198640654

延伸 · 阅读

精彩推荐
  • Mysqlmysql的启动过程详解

    mysql的启动过程详解

    这篇文章主要介绍了mysql的启动过程详解,本文用生动风趣的文风讲解了mysql的启动过程,绝对让你难忘哦,需要的朋友可以参考下 ...

    MYSQL教程网2442020-04-18
  • MysqlMysql 数据库访问类

    Mysql 数据库访问类

    Mysql数据库访问类 实现代码,对于想学习mysql操作类的朋友值得一看 ...

    mysql教程网3102019-10-25
  • MysqlCentOS中mysql cluster安装部署教程

    CentOS中mysql cluster安装部署教程

    这篇文章主要介绍了在CentOS 6.3系统上搭建MySQL Cluster 7.2.25集群的相关资料,需要的朋友可以参考下。 ...

    MYSQL教程网5872020-06-29
  • Mysqlmysql 数据表中查找重复记录

    mysql 数据表中查找重复记录

    以下sql语句可以实现查找出一个表中的所有重复的记录 ...

    mysql教程网2192019-10-30
  • Mysqlmysql 一次更新(update)多条记录的思路

    mysql 一次更新(update)多条记录的思路

    这篇文章主要介绍了mysql 一次更新(update)多条记录的思路,需要的朋友可以参考下 ...

    whsnow6182020-04-06
  • Mysql快速解决mysql导数据时,格式不对、导入慢、丢数据的问题

    快速解决mysql导数据时,格式不对、导入慢、丢数据的问题

    这篇文章主要介绍了快速解决mysql导数据时,格式不对、导入慢、丢数据的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    黄大侠aa9732021-01-22
  • Mysqlmysql索引学习教程

    mysql索引学习教程

    在mysql 中,索引可以分为两种类型 hash索引和 btree索引。这篇文章主要介绍了mysql索引的相关知识,非常不错,具有参考借鉴价值,感兴趣的朋友一起看看吧...

    自由港4742020-06-23
  • MysqlMysql 5.7.19 免安装版遇到的坑(收藏)

    Mysql 5.7.19 免安装版遇到的坑(收藏)

    这篇文章给大家分享了mysql 5.7.19免安装版在安装过程中遇到的一些问题,以前有mysql服务的话 需要去停掉mysql服务。具体内容介绍大家参考下本文 ...

    三思再三思5042020-08-06