一.简介

deamon是守护神的意思,表示守护进程。mysqld就是mysql的服务器端,就是基于socket的一个服务器端程序,它始终监听3306端口(默认端口)。mysql是客户端程序。
安装mysql server时,可以选择是否将其作为服务进行安装。如果只是将其作为普通的应用程序来安装,那么它就是一个简简单单的应用程序。
mysqld需要传些参数才能正常启动,输入命令mysqld --help查看帮助,结果又让输入mysqld --verbose --help查看详细命令.

二.Windows上专有命令

windowsNT和win32上的专有命令,主要是安装服务,移除服务的几个选项:

NT and Win32 specific options:

  --install                     Install the default service (NT).
运行这个命令就安装了一个mysql服务
  --install-manual              Install the default service started manually (NT).
  --install service_name        Install an optional service (NT).
  --install-manual service_name Install an optional service started manually (NT).
  --remove                      Remove the default service from the service list (NT).

从服务列表中移除mysql

  --remove service_name         Remove the service_name from the service list (NT).
  --enable-named-pipe           Only to be used for the default server (NT).
  --standalone                  Dummy option to start as a standalone server (NT).

安装服务mysqld install之后,就可以用net start mysql命令启动服务了,注意,一定要把配置文件放到默认路径上去,否则服务缺少参数无法启动。就可以用mysql -uroot -p命令登录服务器了。用mysqld remove命令移除服务之后,再用net start mysql就会说找不到服务名。

三.默认配置文件的读取

默认选项的读取:因为这个命令的选项实在是不少,所以不可能在控制台下输入那么多,只能写在文件里从其中读取。默认的读取顺序如下:
Default options are read from the following files in the given order:
C:\Windows\my.ini C:\Windows\my.cnf
C:\my.ini C:\my.cnf
C:\Program Files\MySQL\MySQL Server 5.7\my.ini
C:\Program Files\MySQL\MySQL Server 5.7\my.cnf

可见,mysqld.exe挨个检测文件是否存在,如果存在那就找到了配置文件,读取参数并启动就完事了。至于文件是.ini还是.cnf,都行,但是文件名必须得是my。首先是c:\windows文件夹下;其次是c:\下;最后是c:\program files\mysql\mysql server5.7\my.ini下。实际上这个配置文件的路径是可以在参数中指明的,这样就不需要默认的文件路径了。

四.把mysql添加成服务

当然可以通过mysqld install一个指令把mysql添加为服务。服务都有如下几个基本属性:

  • 服务名称:通过net start 服务名来启动服务
  • 显示名称
  • 可执行文件路径:可以带参数,比如:mysqld.exe --default-file="c:\programdata\mysql\my.ini",其实就是一个控制台命令,可以带参数的。
  • 启动类型
  • 服务状态

重点说一下可执行文件路径:
mysql中有一个概念叫:安装类型。安装类型是很多的,首先由操作系统的类型决定安装类型,其次安装类型按照版本,是exe安装的还是手动安装的分为不同种安装类型。
打开mysql workbench,点击设置连接,在system profile标签中可以看见许多安装类型,枚举两个:

  • (windows)mysql 5.7 installer package
  • (windows )mysql x64 zip package
    ......

不同的安装方式采用的my.ini的位置不一样,比如workbench默认的my.ini有可能跟控制台下启动mysql默认的my.ini不一样,这点一定要注意。
在安装mysql服务时,如果使用mysqld install命令安装,那么这个服务的可执行文件路径是没有default-file的,所以就要用上第三部分所说的默认检查my.ini。如果使用mysql installer安装,那么这个服务的可执行文件路径可能会自带default-file,在programdata/mysql文件夹下存放。

五.第一参数(与配置文件路径相关的参数,不能写在配置文件里面)

  • --print-defaults Print the program argument list and exit.
    打印参数列表并退出
  • --no-defaults Don't read default options from any option file,except for login file.
  • --defaults-file=# Only read default options from the given file #.
    这个很重要,明确指明配置文件的位置

六.普通参数,在配置文件中写的参数

总共有1000多项,包含服务器端的许多方面,涉及数据库各个部分,用mysqld --verbose --help > haha.txt导出到文本文件,一有闲暇,就读一会儿。

七. 查看正在运行的服务器参数

mysqladmin variables

mysqld初探的更多相关文章

  1. ubuntu 下安装 mysql 启动报错:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

    环境: ubuntu LTS 18.04.1 mysql Ver 14.14 Distrib 5.7.29, for Linux (x86_64) 初探 linux,按照如下安装完mysql sudo ...

  2. 初探领域驱动设计(2)Repository在DDD中的应用

    概述 上一篇我们算是粗略的介绍了一下DDD,我们提到了实体.值类型和领域服务,也稍微讲到了DDD中的分层结构.但这只能算是一个很简单的介绍,并且我们在上篇的末尾还留下了一些问题,其中大家讨论比较多的, ...

  3. CSharpGL(8)使用3D纹理渲染体数据 (Volume Rendering) 初探

    CSharpGL(8)使用3D纹理渲染体数据 (Volume Rendering) 初探 2016-08-13 由于CSharpGL一直在更新,现在这个教程已经不适用最新的代码了.CSharpGL源码 ...

  4. 从273二手车的M站点初探js模块化编程

    前言 这几天在看273M站点时被他们的页面交互方式所吸引,他们的首页是采用三次加载+分页的方式.也就说分为大分页和小分页两种交互.大分页就是通过分页按钮来操作,小分页是通过下拉(向下滑动)时异步加载数 ...

  5. JavaScript学习(一) —— 环境搭建与JavaScript初探

    1.开发环境搭建 本系列教程的开发工具,我们采用HBuilder. 可以去网上下载最新的版本,然后解压一下就能直接用了.学习JavaScript,环境搭建是非常简单的,或者说,只要你有一个浏览器,一个 ...

  6. .NET文件并发与RabbitMQ(初探RabbitMQ)

    本文版权归博客园和作者吴双本人共同所有.欢迎转载,转载和爬虫请注明原文地址:http://www.cnblogs.com/tdws/p/5860668.html 想必MQ这两个字母对于各位前辈们和老司 ...

  7. React Native初探

    前言 很久之前就想研究React Native了,但是一直没有落地的机会,我一直认为一个技术要有落地的场景才有研究的意义,刚好最近迎来了新的APP,在可控的范围内,我们可以在上面做任何想做的事情. P ...

  8. mysqld: Out of memory 解决办法(mysql)

    自己配置的XWAMP环境,默认下没有详细配置mysql的my.ini,一方面不同服务器的配置不一样,另一方面按照默认为空的方式也一直没有出现过问题.不过最近服务器挂掉了,出现的症状是: 网站不能打开, ...

  9. 【手把手教你全文检索】Apache Lucene初探

    PS: 苦学一周全文检索,由原来的搜索小白,到初次涉猎,感觉每门技术都博大精深,其中精髓亦是不可一日而语.那小博猪就简单介绍一下这一周的学习历程,仅供各位程序猿们参考,这其中不涉及任何私密话题,因此也 ...

随机推荐

  1. android手机旋转屏幕时让GridView的列数与列宽度自适应

    无意中打开了一年前做过的一个android应用的代码,看到里面实现的一个小功能点(如题),现写篇文章做个笔记.当时面临的问题是,在旋转屏幕的时候需要让gridview的列数与宽度能自适应屏幕宽度,每个 ...

  2. git 版本回退

    由于操作失误,需要将代码进行版本回退,首先在本地仓库执行了“git reset --hard HEAD^”命令,这样只会回退本地仓库的代码,但是我的代码之前已经push到了远程库中,查看远程仓库,发现 ...

  3. C#基础知识六之委托(delegate、Action、Func、predicate)

    1. 什么是委托 官方解释 委托是定义方法签名的类型,当实例化委托时,您可以将其实例化与任何具有兼容签名的方法想关联,可以通过委托实例调用方法. 个人理解 委托通俗一点说就是把一件事情交给别人来帮助完 ...

  4. 在基于MVC的Web项目中使用Web API和直接连接两种方式混合式接入

    在我之前介绍的混合式开发框架中,其界面是基于Winform的实现方式,后台使用Web API.WCF服务以及直接连接数据库的几种方式混合式接入,在Web项目中我们也可以采用这种方式实现混合式的接入方式 ...

  5. Xcode7.1环境下上架iOS App到AppStore 流程② (Part 二)

    前言部分 part二部分主要讲解 iOS App IDs 的创建.概要文件的配置.以及概要文件安装的过程. 一.iOS App IDs 的创建 1)进入如图1所示界面点击右上角箭头所指的加号 进入iO ...

  6. enumerate用法总结-Python 3

    enumerate()说明 enumerate()是python的内置函数 enumerate在字典上是枚举.列举的意思 对于一个可迭代的(iterable)/可遍历的对象(如列表.字符串),enum ...

  7. 【转】ZigBee终端入网方式深入分析

    前述 继之前对终端Direct Join的分析,发现很多东西还很模糊,存在很多问题.终于找到时间继续深入挖下去,这次应该比较完整地搞清了终端的入网机制,并纠正之前的几个认识偏差. 由于Z-Stack网 ...

  8. 关于MySql的1045错误修正

    很多情况数据库很久没有使用,偶尔打开会出现一系列错误,例如1045错误即是 mysql ERROR 1045 : Access denied for user‘root’@localhost(usin ...

  9. 自助式BI为何能取代传统BI,逐渐占据商业智能市场?

    前言:未来的时代将由数据勾画,未来的BI将是自助BI的时代 随着数据爆发式增长,像ERP.OA.CRM等系统在企业运用的越来越多.这些系统的使用必然会产生很多的数据,比如在产品加工设计测试维护过程中产 ...

  10. 二胎上位之路:html5报表和原生报表的笑尿撕逼

    前段时间,小编和我们移动端产品经理之间发生了一场罕见的撕逼大战. (看到撕逼二字,估计读者朋友们来劲了,呵呵呵……) 事情起因是这样的.小编基于对客户需求以及同行产品的了解,发了一篇关于报表在各种屏幕 ...