mysqld初探
一.简介
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初探的更多相关文章
- 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)Repository在DDD中的应用
概述 上一篇我们算是粗略的介绍了一下DDD,我们提到了实体.值类型和领域服务,也稍微讲到了DDD中的分层结构.但这只能算是一个很简单的介绍,并且我们在上篇的末尾还留下了一些问题,其中大家讨论比较多的, ...
- CSharpGL(8)使用3D纹理渲染体数据 (Volume Rendering) 初探
CSharpGL(8)使用3D纹理渲染体数据 (Volume Rendering) 初探 2016-08-13 由于CSharpGL一直在更新,现在这个教程已经不适用最新的代码了.CSharpGL源码 ...
- 从273二手车的M站点初探js模块化编程
前言 这几天在看273M站点时被他们的页面交互方式所吸引,他们的首页是采用三次加载+分页的方式.也就说分为大分页和小分页两种交互.大分页就是通过分页按钮来操作,小分页是通过下拉(向下滑动)时异步加载数 ...
- JavaScript学习(一) —— 环境搭建与JavaScript初探
1.开发环境搭建 本系列教程的开发工具,我们采用HBuilder. 可以去网上下载最新的版本,然后解压一下就能直接用了.学习JavaScript,环境搭建是非常简单的,或者说,只要你有一个浏览器,一个 ...
- .NET文件并发与RabbitMQ(初探RabbitMQ)
本文版权归博客园和作者吴双本人共同所有.欢迎转载,转载和爬虫请注明原文地址:http://www.cnblogs.com/tdws/p/5860668.html 想必MQ这两个字母对于各位前辈们和老司 ...
- React Native初探
前言 很久之前就想研究React Native了,但是一直没有落地的机会,我一直认为一个技术要有落地的场景才有研究的意义,刚好最近迎来了新的APP,在可控的范围内,我们可以在上面做任何想做的事情. P ...
- mysqld: Out of memory 解决办法(mysql)
自己配置的XWAMP环境,默认下没有详细配置mysql的my.ini,一方面不同服务器的配置不一样,另一方面按照默认为空的方式也一直没有出现过问题.不过最近服务器挂掉了,出现的症状是: 网站不能打开, ...
- 【手把手教你全文检索】Apache Lucene初探
PS: 苦学一周全文检索,由原来的搜索小白,到初次涉猎,感觉每门技术都博大精深,其中精髓亦是不可一日而语.那小博猪就简单介绍一下这一周的学习历程,仅供各位程序猿们参考,这其中不涉及任何私密话题,因此也 ...
随机推荐
- .NET 同步与异步之封装成Task(五)
本随笔续接:.NET 实现并行的几种方式(四) 前篇随笔已经介绍了几种可以实现并发的方式,其中异步方法.是最简便的方式.而 异步方式是基于 Task 和 async修饰符和await运算符实现的. 换 ...
- 绑定一个值给radio
在ASP.NET MVC程序中,需要给一个radio list表绑定一个值. 下面是Insus.NET实现的方法: 使用foreach来循环radio每一个选项,如果值与选项的值相同,那这个选项为选中 ...
- c# 九九乘法表
static void Main(string[] args) { ; i < ; i++) { ; s <= i; s++) { Console.Write(s + "*&qu ...
- java变量类型
一.局部变量 局部变量声明在方法.构造方法或者语句块中: 局部变量在方法.构造方法.或者语句块被执行的时候创建,当它们执行完成后,变量将会被销毁: 访问修饰符不能用于局部变量: 局部变量只在声明它的方 ...
- spring框架之javaconfig
简介:随着java5的推出,加上当年基于纯java annotation的依赖注入框架Guice的出现,spring推出并持续完善了基于java代码和annotation元信息的依赖关系绑定描述方法, ...
- 高性能 TCP & UDP 通信框架 HP-Socket v3.4.1
HP-Socket 是一套通用的高性能 TCP/UDP 通信框架,包含服务端组件.客户端组件和 Agent 组件,广泛适用于各种不同应用场景的 TCP/UDP 通信系统,提供 C/C++.C#.Del ...
- ES6之字符串扩展方法(常用)
es6这个String对象倒是扩展了不少方法,但是很多都是跟字符编码相关,个人选了几个感觉比较常用的方法: includes 搜索字符的神器 还记得我们之前如何判断某个字符串对象是否包含特地字符的吗? ...
- commit(), commitNow()和commitAllowingStateLoss()
关于FragmentTransaction的各种提交方法: commit(),commitAllowingStateLoss(),commitNow()和commitNowAllowingStateL ...
- 个人作业-week2:关于微软必应词典的案例分析
第一部分 调研,评测 评测基于微软必应词典Android5.2.2客户端,手机型号为MI NOTE LTE,Android版本为6.0.1. 软件bug:关于这方面,其实有一些疑问.因为相对于市面上其 ...
- 【译】Spring 4 Hello World例子
前言 译文链接:http://websystique.com/spring/spring-4-hello-world-example-annotation-tutorial-full-example/ ...