windows下安装 mysql-8.0.16-winx64 含官网参考手册

官网下载mysql

https://dev.mysql.com/downloads/mysql/

创建配置文件my.ini

my.ini是mysql重要的配置文件,许多需要的配置都可以在这个文件中配置,默认如果没有该文件,则应该自己新建并且放置于解压后的主目录中如:
在这里插入图片描述

配置my.ini

此处我设置数据库位置为指定位置,并且参照mysql手册中,目录中需要用斜杆或者\双斜杠,具体见下my.ini注意(其中有指定默认选项文件的方法),默认是utf8对于有微信表情有需要的则对应改为utf8mb4

[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=E:/software/Mysql/mysql-8.0.16-winx64
# 设置mysql数据库的数据的存放目录
datadir=E:/software/Mysql/data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4

初始化mysql

进入到解压后的mysql主目录下的bin目录,使用cmd运行命令(最好使用管理员权限运行)–console参数打印出具体的内容

mysqld --initialize --console

记录出现的随机密码:
在这里插入图片描述

安装mysql服务

安装服务,方便每次启动系统自动启动mysql服务,如果运行如下代码,并且显示
Service successfully installed.则安装成功,重复操作会提示已经安装,如果已经安装,并且需要重新配置启动服务参数,则可以使用mysqld --remove mysql(安装的服务名)删除服务并且重新执行install

mysqld install

启动服务

net start mysql
#关闭服务
net stop mysql

登陆服务

使用命令登陆(必须先启动服务),输入以下代码后输入记录的随机密码,正常即可进入mysql

mysql -uroot -p
#输入密码后回车

修改密码

知道root密码修改密码

登陆mysql后执行sql语句:,提示

alter user root@localhost identified by '新密码';

如下提示,则成功修改。下次登陆时使用新密码登陆。
在这里插入图片描述

忘记root密码修改密码(确保能在安装mysql的机器上操作)

方法一、在服务启动时运行指定初始化文件(推荐)

  1. 关闭服务 net stop mysql
  2. 编写初始化文件(原理:启动时运行初始化文件sql。执行修改密码操作)如:a.txt,内容:
alter user root@localhost identified by '新密码';
  1. 启动时指定文件(斜杆规则同之前)
mysqld --init-file=d:/a.txt --console


出现如此,则已经修改成功。博主亲测mysql8可用.

方法二、使用代码 mysqld --skip-grant-tables参数

此方法启动时不同以前的版本可用 mysqld-nl。mysql8中没有此文件

  1. 关闭服务
net stop mysql
  1. 跳过权限验证开启mysql
mysqld --console --skip-grant-tables --shared-memory
  1. 此时,开启另外一个cmd并且进入解压目录,使用空密码登陆。
  2. 登陆后将密码置空(好像这里用存的是加密的密码,所以只能置空不然登陆不进去,亲测)。
UPDATE mysql.user SET authentication_string='' WHERE user='root' and host='localhost';
  1. 登陆后修改密码。

–skip-grant-tables官方解释:
此选项使服务器在不使用权限系统的情况下启动,这使得任何对服务器具有访问权限的人都可以无限制地访问所有数据库。通过从系统shell 执行mysqladmin flush-privileges或mysqladmin reload命令,或者FLUSH PRIVILEGES 在连接到服务器后发出MySQL 语句,可以使正在运行的服务器再次开始使用授权表。

如果使用–skip-grant-tables禁用身份验证检查的选项启动服务器 ,则服务器会–skip-networking自动启用 以防止远程连接。

此选项还会导致服务器在其启动过程中禁止加载随INSTALL PLUGIN语句一起安装的用户定义函数(UDF),计划事件和插件 。要使插件无论如何都要加载,请使用该 --plugin-load选项。 --skip-grant-tables也会导致disabled_storage_engines 系统变量无效。

此选项不会导致在服务器启动期间禁止加载服务器组件。

FLUSH PRIVILEGES可能由启动后执行的其他操作隐式执行(从而导致服务器再次开始使用授权表)。例如,mysql_upgrade在升级过程中刷新权限。
在正常启动时,服务器通过读取mysql.plugins系统表来确定要加载哪些插件。如果使用该–skip-grant-tables选项启动服务器 ,则不会查询该mysql.plugins表,也不会加载其中列出的插件。 --plugin-load即使–skip-grant-tables给出插件也可以加载插件 。 --plugin-load还可以在启动时加载无法在运行时加载的插件。

备注:mysql官网列出的常用的命令(mysql服务器命令选项

my.ini注意(官网手册):

可以使用任何文本编辑器(如记事本)创建和修改选项文件。例如,如果安装了MySQL E:\mysql并且数据目录位于 E:\mydata\data,则可以创建一个包含一个[mysqld]部分的选项文件,以指定basedir和 datadir选项的值:

[mysqld]
# set basedir to your installation path
basedir=E:/mysql
# set datadir to the location of your data directory
datadir=E:/mydata/data

使用(转发)斜杠而不是反斜杠在选项文件中指定Microsoft Windows路径名。如果你使用反斜杠,请将它们加倍:

[mysqld]
# set basedir to your installation path
basedir=E:\\mysql
# set datadir to the location of your data directory
datadir=E:\\mydata\\data

第4.2.2.2节“使用选项文件” 中给出了在选项文件值中使用反斜杠的规则。

mysqld常用重要的命令

4.2.2.3影响选项文件处理的命令行选项
大多数支持选项文件的MySQL程序都处理以下选项。由于这些选项会影响选项文件处理,因此必须在命令行中提供它们,而不是在选项文件中。要正常工作,必须在其他选项之前给出每个选项,但有以下例外:

  • –print-defaults可以后立即使用 --defaults-file, --defaults-extra-file或 --login-path。
  • 在Windows上,如果使用–defaults-file和 --install选项启动服务器 ,则 --install必须先行。请参见 第2.3.5.8节“将MySQL作为Windows服务启动”

将文件名指定为选项值时,请避免使用~shell元字符,因为它可能不会按预期解释。

  • –defaults-extra-file=file_name
    在全局选项文件之后读取此选项文件,但在(在Unix上)用户选项文件之前和(在所有平台上)登录路径文件之前。(有关使用选项文件的顺序的信息,请参见 第4.2.2.2节“使用选项文件”。)如果文件不存在或无法访问,则会发生错误。 file_name如果作为相对路径名而不是完整路径名给出,则相对于当前目录进行解释。
  • –defaults-file=file_name
    只读给定的选项文件。如果文件不存在或无法访问,则会发生错误。 file_name如果作为相对路径名而不是完整路径名给出,则相对于当前目录进行解释。
    例外:即使有 --defaults-file, mysqld也读取 mysqld-auto.cnf和客户端程序读取.mylogin.cnf
  • –defaults-group-suffix=str
    不仅要读取常用选项组,还要读取通常名称和后缀的组 str。例如, mysql客户端通常读取 [client]和[mysql] 组。如果–defaults-group-suffix=_other 给出了 选项,mysql也会读取 [client_other]和 [mysql_other]组。
  • –login-path=name
    从.mylogin.cnf登录路径文件中的指定登录路径中读取选项 。阿 “ 登录路径 ”是含有指定要连接到哪个MySQL服务器和选项哪个帐户作为认证选项组。要创建或修改登录路径文件,请使用 mysql_config_editor实用程序。请参见 第4.6.7节“ mysql_config_editor - MySQL配置实用程序”
    除了程序默认读取的选项组之外,客户端程序还会读取与指定登录路径对应的选项组。考虑这个命令:
mysql --login-path=mypath

默认情况下,mysql客户端读取 [client]和[mysql] 选项组。因此,对于所示的命令, MySQL的读取[client] 和[mysql]其他选项的文件,并 [client],[mysql]以及 [mypath]从登录路径文件。
即使使用该–no-defaults选项,客户端程序也会读取登录路径文件 。
要指定备用登录路径文件名,请设置 MYSQL_TEST_LOGIN_FILE环境变量。

  • –no-defaults
    不要读任何选项文件。如果程序启动由于从选项文件中读取未知选项而失败, --no-defaults则可用于防止它们被读取。
    例外情况是客户端程序读取 .mylogin.cnf登录路径文件(如果存在),即使–no-defaults使用它 也是如此。这允许以比命令行更安全的方式指定密码,即使存在 --no-defaults也是如此。(.mylogin.cnf由mysql_config_editor实用程序创建 。请参见 第4.6.7节“ mysql_config_editor - MySQL配置实用程序”。)
  • –print-defaults
    打印程序名称以及从选项文件中获取的所有选项。密码值被屏蔽。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值