在Windows上,运行MySQL的推荐方式是将其作为Windows服务安装,这样MySQL就会在Windows启动和停止时自动启动和停止。作为服务安装的MySQL服务器也可以从命令行使用控制网命令,或与图形服务实用程序。通常,要将MySQL安装为Windows服务,您应该使用具有管理员权限的帐户登录。
的服务实用程序(Windows业务控制经理)可在Windows控制面板中找到。为避免冲突,建议关闭服务实用程序,同时从命令行执行服务器安装或删除操作。
安装服务
在将MySQL作为Windows服务安装之前,如果当前服务器正在运行,您应该首先使用以下命令停止它:
C:\> "C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqladmin" -u root shutdown
如果MySQL根
用户帐号有密码,需要调用mysqladmin与- p
选项并在提示时提供密码。
这个命令调用MySQL管理实用程序mysqladmin连接到服务器并告诉它关闭。该命令以MySQL的方式连接根
user,这是MySQL授权系统中的默认管理帐户。
MySQL授权系统中的用户完全独立于Windows下的任何操作系统用户。
使用以下命令将服务器安装为服务:
C:\> "C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld"——安装
service-installation命令不会启动服务器。本节稍后将给出相关说明。
为了方便调用MySQL程序,可以添加MySQL的路径名箱子
目录到您的Windows系统路径
环境变量:
在Windows操作系统桌面上,右键单击我的电脑图标,然后选择 .
下一步选择
从 菜单,然后单击 按钮。下系统变量中,选择 ,然后点击 按钮。的 应该出现对话。
将光标放在文本末尾出现的空格处变量值.(使用结束键,以确保您的光标定位在文本的最后在这个空间。)然后输入MySQL的完整路径名
箱子
目录(例如,C:\Program Files\MySQL\MySQL Server 8.0\bin
),并且应该用分号将该路径与该字段中的任何值分隔开。通过单击,依次关闭此对话框和每个对话框 直到所有已开启的对话都被取消。现在,您应该能够通过在DOS提示符下从系统上的任何目录键入任何MySQL可执行程序的名称来调用它,而不需要提供路径。这包括服务器和mysql客户端,以及所有MySQL命令行实用程序,如mysqladmin而且, mysqldump.你不应该添加MySQL
箱子
目录到您的Windows路径
如果你在同一台机器上运行多个MySQL服务器。
在编辑系统时必须非常小心路径
用手;意外删除或修改现有的任何部分路径
价值会让你的系统失灵甚至无法使用。
安装服务时可以使用以下附加参数:
属性之后指定服务名称
——安装
选择。默认服务名称为MySQL
.如果给出了服务名,它后面可以跟着一个选项。按照惯例,这应该是
——defaults-file =
指定一个选项文件的名称,服务器在启动时应从中读取选项。file_name
使用单一的选项而不是
——defaults-file
是可能的,但不鼓励。——defaults-file
更加灵活,因为它允许您通过将多个启动选项放在已命名的选项文件中来为服务器指定多个启动选项。也可以指定a
——本地服务
选项。这将导致服务器使用LocalService
系统权限有限的Windows帐户。如果两个——defaults-file
而且——本地服务
是在服务名之后给出的,它们可以是任意顺序。
对于作为Windows服务安装的MySQL服务器,以下规则确定服务器使用的服务名称和选项文件:
如果service-installation命令没有指定服务名或默认服务名(
MySQL
)——安装
选项时,服务器使用的服务名称MySQL
方法中的选项(mysqld)
组的标准选项文件。如果service-installation命令指定的服务名称不是
MySQL
后,——安装
选项,则服务器使用该服务名称。对象中的选项(mysqld)
组和与标准选项文件中的服务具有相同名称的组。这使您能够使用(mysqld)
group表示所有MySQL服务应该使用的选项,还有一个选项组表示安装了该服务名的服务器使用的服务名。如果service-installation命令指定了a .
——defaults-file
选项后的服务名称,服务器读取选项的方式与前一项中描述的相同,只是它只从指定的文件读取选项,而忽略标准选项文件。
作为一个更复杂的例子,考虑以下命令:
C:\> "C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld"——install MySQL——default -file=C:\my-opt .cnf
这里,默认的服务名(MySQL
)在——安装
选择。如果没有——defaults-file
选项时,此命令将导致服务器读取(mysqld)
组从标准选项文件。然而,因为——defaults-file
选项时,服务器从(mysqld)
选项组,并且只能从命名文件。
在Windows上,如果服务器是用——defaults-file
而且——安装
选项,——安装
一定是第一个。否则,mysqld.exe
试图启动MySQL服务器。
在Windows中,还可以将选项指定为“开始”参数服务在启动MySQL服务之前,请先运行MySQL工具。
最后,在尝试启动MySQL服务之前,请确保用户变量%临时%
而且% TMP %
(还有% TMPDIR %
(如果曾经设置过)将运行该服务的操作系统用户指向该用户具有写访问权限的文件夹。MySQL服务默认运行用户为LocalSystem
的默认值%临时%
而且% TMP %
是C:\Windows\Temp
,一个目录LocalSystem
默认具有写访问权限。但是,如果对默认设置进行了任何更改(例如,对运行服务的用户或前面提到的用户变量进行了更改)——tmpdir
选项已经被用于将临时目录放在其他地方),MySQL服务可能无法运行,因为没有将对临时目录的写访问权限授予适当的用户。
启动服务
MySQL服务器实例作为服务安装后,Windows在启动时自动启动该服务。服务也可以立即从服务实用程序,或通过使用sc开始mysqld_service_name
或网开始mysqld_service_name
命令。SC而且网命令不区分大小写。
当作为服务运行时,mysqld无法访问控制台窗口,因此无法在那里看到任何消息。如果mysqld未启动时,请检查错误日志,查看服务器是否在日志中写入了任何消息以指示问题的原因。错误日志位于MySQL数据目录(例如,C:\Program Files\MySQL\MySQL Server 8.0\data
).它是后缀为的文件.err
.
当MySQL服务器已作为服务安装,并且该服务正在运行时,Windows将在Windows关闭时自动停止该服务。命令也可以手动停止服务器服务
实用程序,sc停止mysqld_service_name
命令,净停止mysqld_service_name
命令,或mysqladmin关闭命令。
如果您不希望服务在引导过程中自动启动,您还可以选择将服务器安装为手动服务。要做到这一点,请使用——install-manual
选项,而不是——安装
选择:
C:\> "C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld"——安装手册
移除服务
若要删除作为服务安装的服务器,请首先通过执行命令停止正在运行的服务器SC停止mysqld_service_name
或净停止mysqld_service_name
.然后使用SC删除mysqld_service_name
要移除它:
C:\> SC DELETE mysql
C:\> "C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld"——删除
如果mysqld不是作为服务运行,您可以从命令行启动它。有关说明,请参见2.3.4.6节,“从Windows命令行启动MySQL”.
如果在安装过程中遇到困难,请参见第2.3.5节,“Microsoft Windows MySQL Server安装故障排除”.
有关停止或删除Windows服务的详细信息,请参见章节5.8.2.2“启动多个MySQL实例作为Windows服务”.