MySQL 的启动和连接方式

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: MySQL运行包括两部分,一部分是服务器端程序mysqld,另外一部分则是客户端程序mysql。只有mysqld启动了,mysql客户端才能与之连接。mysqld的启动方式有4种,同样mysql的连接方式也有4种。

mysqld的启动方式

方式1:mysqld

mysqld是一个可执行命令,也是服务器端程序,启动这个程序就相当于启动了MySQL服务器端的进程。但这个命令不常用,常用mysqld_safe命令。

命令格式:
mysqld [OPTIONS]

如:
mysqld --defaults-file=/etc/my.cnf

查看帮助:
mysqld --verbose --help

方式2:mysqld_safe

mysqld_safe是一个启动脚本,间接引用mysqld。在启动mysqld_safe脚本时,在启动MySQL服务器进程时,同时会启动一个守护进程,作用是监控mysqld,如mysqld服务挂了后,会立即重启一个mysqld服务。

另外,mysqld_safe启动方式也会把运行过程的报错日志和其它一些诊断信息输出到某一个文件中,这样方便我们排查解决问题。这个启动方式是最常用的方式。

命令格式:
mysqld_safe [OPTIONS] &

如:
mysqld_safe --defaults-file=/etc/my.cnf &

查看帮助:
mysqld_safe --help

方式3:mysqld_multi

如需要在一台主机运行多个MySQL实例,则就可以使用mysqld_multi来对不同的mysqld服务进行管理,这个启动方式对MySQL集群很有帮助。

命令格式:
mysqld_multi [OPTIONS] {start|reload|stop|report} [GNR,GNR,GNR...]

查看帮助:
mysqld_multi --help

方式4:mysql.server

mysql.server也是一个启动脚本,它会间接的调用mysqld_safe,在调用mysql.server时在后边指定start参数就可以启动服务器程序了。这个启动方式一般是通过RPM包安装的MySQL产生的。

mysql.server 文件其实是一个链接文件,它的实际文件是 ../support-files/mysql.server

命令格式:
mysql.server start|restart|stop|status

mysql的连接方式

方式1:TCP/IP套接字

在类Unix和Windows操作系统下都可以使用,TCP/IP套接字是一个网络协议,通过MySQL服务器启动时监听一个端口,客户端启动连接时指明MySQL服务器的主机IP+端口即可实现连接。

此种通信方式,MySQL服务器和客户端可以部署在不同主机上,也是最常用的一种连接方式。

mysql -h主机IP -P端口 -u用户 -p
如:
mysql -h127.0.0.1 -P3306 -uroot -p

MySQL 的启动和连接方式

方式2:Unix套接字

仅限类Unix操作系统下使用,Unix套接字不是网络协议,只能在MySQL服务器和客户端在同一个主机上才能使用。

如果我们在启动客户端程序的时候指定的主机名为localhost,或者指定了--protocol=socket的启动参数,那服务器程序和客户端程序之间就可以通过Unix域套接字文件来进行通信了。

MySQL服务器程序默认监听的Unix域套接字文件路径为/tmp/mysql.sock,客户端程序也默认连接到这个Unix域套接字文件。

1. mysql -uroot -p //默认通过socket通信 缺省localhost
2. mysql -hlocalhost -uroot -p
3. mysql -S socket文件路径 -uroot -p
如:
mysql -S /var/run/mysqld/mysqld.sock -uroot -p

MySQL 的启动和连接方式

MySQL 的启动和连接方式

MySQL 的启动和连接方式

查看socket文件位置:
show variables like 'socket';

MySQL 的启动和连接方式

方式3:命名管道

仅限类Windows操作系统下使用,只能在MySQL服务器和客户端在同一个主机上才能使用。

需要在启动服务器程序的命令中加上--enable-named-pipe参数,然后在启动客户端程序的命令中加入--pipe或者--protocol=pipe参数。

–enable-named-pipe=on/off;

方式4:共享内存

仅限类Windows操作系统下使用,只能在MySQL服务器和客户端在同一个主机上才能使用。

需要在启动服务器程序的命令中加上--shared-memory参数,在成功启动服务器后,共享内存便成为本地客户端程序的默认连接方式,不过我们也可以在启动客户端程序的命令中加入--protocol=memory参数来显式的指定使用共享内存进行通信。

–shared-memory=on/off;
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
14天前
|
安全 关系型数据库 MySQL
【赵渝强老师】MySQL的连接方式
本文介绍了MySQL数据库服务器启动后的三种连接方式:本地连接、远程连接和安全连接。详细步骤包括使用root用户登录、修改密码、创建新用户、授权及配置SSL等。并附有视频讲解,帮助读者更好地理解和操作。
|
28天前
|
SQL Java 关系型数据库
java连接mysql查询数据(基础版,无框架)
【10月更文挑战第12天】该示例展示了如何使用Java通过JDBC连接MySQL数据库并查询数据。首先在项目中引入`mysql-connector-java`依赖,然后通过`JdbcUtil`类中的`main`方法实现数据库连接、执行SQL查询及结果处理,最后关闭相关资源。
|
1月前
|
SQL JavaScript 关系型数据库
node博客小项目:接口开发、连接mysql数据库
【10月更文挑战第14天】node博客小项目:接口开发、连接mysql数据库
|
1月前
|
Java 关系型数据库 MySQL
【编程基础知识】Eclipse连接MySQL 8.0时的JDK版本和驱动问题全解析
本文详细解析了在使用Eclipse连接MySQL 8.0时常见的JDK版本不兼容、驱动类错误和时区设置问题,并提供了清晰的解决方案。通过正确配置JDK版本、选择合适的驱动类和设置时区,确保Java应用能够顺利连接MySQL 8.0。
163 1
|
1月前
|
Java 关系型数据库 MySQL
springboot学习五:springboot整合Mybatis 连接 mysql数据库
这篇文章是关于如何使用Spring Boot整合MyBatis来连接MySQL数据库,并进行基本的增删改查操作的教程。
95 0
springboot学习五:springboot整合Mybatis 连接 mysql数据库
|
1月前
|
SQL JavaScript 关系型数据库
Node.js 连接 MySQL
10月更文挑战第9天
20 0
|
2月前
|
SQL 关系型数据库 MySQL
MySQL C连接与使用
【9月更文挑战第21天】在 MySQL 中,可以通过 C 语言连接和操作数据库。首先需安装 MySQL 服务器及 C 开发库,然后在程序中包含必要头文件,初始化连接对象,并使用实际参数建立连接。执行 SQL 语句时,需替换表名等变量,获取并遍历结果集。最后,释放资源并关闭连接。过程中应注意错误处理、内存管理和安全性,以及性能优化。此方式适用于高效数据存储和检索的应用程序。
|
2月前
|
SQL JavaScript 关系型数据库
Node服务连接Mysql数据库
本文介绍了如何在Node服务中连接MySQL数据库,并实现心跳包连接机制。
44 0
Node服务连接Mysql数据库
|
1月前
|
关系型数据库 MySQL Linux
Navicat 连接 Windows、Linux系统下的MySQL 各种错误,修改密码。
使用Navicat连接Windows和Linux系统下的MySQL时可能遇到的四种错误及其解决方法,包括错误代码2003、1045和2013,以及如何修改MySQL密码。
217 0
|
3月前
|
关系型数据库 MySQL 网络安全
有关使用Navicat 无法成功连接腾讯云服务器上Mysql的问题解决
这篇文章提供了解决Navicat无法连接腾讯云服务器上MySQL问题的步骤,包括调整防火墙设置、更新MySQL权限和检查远程连接配置。
有关使用Navicat 无法成功连接腾讯云服务器上Mysql的问题解决
下一篇
无影云桌面