MySQL 的启动和连接方式实例分析

本文实例讲述了MySQL 的启动和连接方式。分享给大家供大家参考,具体如下:

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

方式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

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

方式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查询技巧大全》、《MySQL常用函数大汇总》、《MySQL日志操作技巧大全》、《MySQL事务操作技巧汇总》、《MySQL存储过程技巧大全》及《MySQL数据库锁相关技巧汇总》

希望本文所述对大家MySQL数据库计有所帮助。

(0)

相关推荐

  • MySQL 的启动选项和系统变量实例详解

    本文实例讲述了MySQL 的启动选项和系统变量.分享给大家供大家参考,具体如下: MySQL的配置信息可以通过两种方式实现,一种是命令行形式,在启动MySQL服务时后边带上相关配置参数,此种方式会在MySQL重启后失效.另外一种是通过写入配置文件,如my.cnf,启动或者重启MySQL服务都会生效,此种方式是永久生效. 启动选项 命令行 在MySQL服务命令启动时,带上配置参数 启动方式可参考这篇:MySQL 的启动和连接方式 命令格式: 启动命令 --启动选项1[=值1] --启动选项2[=值

  • mysql安全启动脚本mysqld_safe详细介绍

    在Unix和NetWare中推荐使用mysqld_safe来启动mysqld服务器.mysqld_safe增加了一些安全特性,例如当出现错误时重启服务器并向错误日志文件写入运行时间信息.本节后面列出了NetWare的特定行为. 注释:为了保持同旧版本MySQL的向后兼容性,MySQL二进制分发版仍然包括safe_mysqld作为mysqld_safe的符号链接.但是,你不应再依赖它,因为再将来将删掉它. 默认情况下,mysqld_safe尝试启动可执行mysqld-max(如果存在),否则启动m

  • linux CentOS 系统php和mysql命令加入到环境变量中

    在Linux CentOS系统上安装完php和MySQL后,为了使用方便,需要将php和mysql命令加到系统命令中,如果在没有添加到环境变量之前,执行"php -v"命令查看当前php版本信息时时,则会提示命令不存在的错误,下面我们详细介绍一下在linux下将php和mysql加入到环境变量中的方法(假设php.mysql和apache分别安装在/phpstudy/server/php/./phpstudy/server/mysql/和/phpstudy/server/php/中).

  • LINUX启动/重启/停上MYSQL的命令(详解)

    如何启动/停止/重启MySQL 一.启动方式 1.使用 service 启动:service mysqld start 2.使用 mysqld 脚本启动:/etc/inint.d/mysqld start 3.使用 safe_mysqld 启动:safe_mysqld& 二.停止 1.使用 service 启动:service mysqld stop 2.使用 mysqld 脚本启动:/etc/inint.d/mysqld stop 3.mysqladmin shutdown 三.重启 1.使用

  • mysql授权、启动、启动服务常用命令

    一. 四种启动方式: 1.mysqld 启动mysql服务器: ./mysqld --defaults-file=/etc/my.cnf --user=root 客户端连接: mysql --defaults-file=/etc/my.cnf 或 mysql -S /tmp/mysql.sock 2.mysqld_safe 启动mysql服务器: ./mysqld_safe --defaults-file=/etc/my.cnf --user=root & 客户端连接: mysql --defa

  • mysql变量用法实例分析【系统变量、用户变量】

    本文实例讲述了mysql变量用法.分享给大家供大家参考,具体如下: 本文内容: 系统变量 用户变量 局部变量 首发日期:2018-04-18 系统变量: 系统变量就是系统已经提前定义好了的变量 系统变量一般都有其特殊意义.比如某些变量代表字符集.某些变量代表某些mysql文件位置 系统变量中包括会话级变量(当次会话连接生效的变量,如names),以及全局变量(一直生效的变量) [系统变量中全局变量和会话变量其实是使用一套变量,不同的是会话变量仅当次会话生效.] 会话变量的赋值:set 变量名 =

  • MySql服务器系统变量和状态变量介绍

    服务器系统变量 服务器将维护许多表示其配置的系统变量.所有变量均有默认值.可以在命令行中或选项文件设置选项在服务器启动时对它们进行设置.大多数可以在运行时使用SET语句来设置. mysqld服务器维护两种变量.全局变量影响服务器的全局操作.会话变量影响具体客户端连接相关操作. 服务器启动时,将所有全局变量初始化为默认值.可以在选项文件或命令行中指定的选项来更改这些默认值.服务器启动后,通过连接服务器并执行SET GLOBAL var_name语句可以更改动态全局变量.要想更改全局变量,必须具有S

  • linux CentOS 系统下如何将php和mysql命令加入到环境变量中

    linux CentOS 系统下如何将php和mysql命令加入到环境变量中 在Linux CentOS系统上安装完php和MySQL后,为了使用方便,需要将php和mysql命令加到系统命令中,如果在没有添加到环境变量之前,执行"php -v"命令查看当前php版本信息时时,则会提示命令不存在的错误,下面我们详细介绍一下在linux下将php和mysql加入到环境变量中的方法(假设php.mysql和apache分别安装在/phpstudy/server/php/./phpstudy

  • MySql安装启动两种方法教程详解

    mysql安装启动两种方法如下所示: 方法一(简单版): 1.cmd进入mysql安装的bin目录:mysqld.exe –install 2.net start mysql 服务启动(或者选择计算机->(右键)管理->服务和应用程序->服务->mysql右键启动服务) 3.mysql –uroot –p 回车 4.password留空 回车 方法二: 1.cmd进入到mysql安装目录bin,如:D:\MySQL Server 5.6\bin 2.mysqld --console

  • mysql 字符集的系统变量说明

    1.character_set_server和collation_server 这两个变量是服务器的字符集.在系统启动的时候可以通过--character-set-server和--collation-server来设置它们.如果没有的话系统会把这两各变量设置成默认值latin1和latin1_swedish_ci.默认值是编译在程序中的,只能通过重新编译来改变. 这两个变量只用来为create database命令提供默认值. 2.character_set_database和collatio

随机推荐