点击下载地址
我解压的路径:C:\mysql-8.0.21-winx64,在此文件夹下创建my.ini文件并把以下内容粘贴进去保存
[mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 [mysqld] #设置3306端口 port = 3306 # 设置mysql的安装目录 basedir=C:\mysql-8.0.21-winx64 # 设置mysql数据库的数据的存放目录 datadir=C:\mysql-8.0.21-winx64\data # 允许最大连接数 max_connections=200 # 服务端使用的字符集默认为8比特编码的latin1字符集 character-set-server=utf8 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB管理员权限进入cmd命令窗口,且cd到安装路径的bin目录下。 依次输入:mysqld --install (安装) mysqld --initialize (初始化)net start mysql(运行)
C:\mysql-8.0.21-winx64\bin>mysqld --install The service already exists! The current server installed: C:\mysql-8.0.21-winx64\bin\mysqld MySQL C:\mysql-8.0.21-winx64\bin>mysqld --initialize C:\mysql-8.0.21-winx64\bin>net start mysql MySQL 服务正在启动 .. MySQL 服务已经启动成功。 执行net start mysql时,可能遇到 如下问题C:\mysql-8.0.21-winx64\bin>net start mysql MySQL 服务正在启动 .. MySQL 服务无法启动。 服务没有报告任何错误。 请键入 NET HELPMSG 3534 以获得更多的帮助。 问题分析 (1)安装目录下data文件夹是自己创建的,删除data文件夹,然后在MySQL文件夹的bin目录下CMD执行mysqld --initialize命令,重新初始化一个data文件。(大部分好像都是这个原因) (2)系统中还有其他版本的MySQL,占用了MySQL的3306端口(查看已经占用的端口,netstat -ano) (3)MySQL文件夹的bin目录下,CMD执行mysqld --console命令,查询错误日志,毕竟每个人遇到的错误原因都不一定相同,可以通过自己的日志找到自己真正错误的原因mysql安装之初始化报错:mysqld: [ERROR] Found option without preceding group in config file C:\mysql\my.ini at line 1. 原因:my.ini文件格式是utf-8。解决办法,my.ini文件另存为ANSI格式文件在data文件夹下找寻.err后缀的文件,打开文件找寻初始密码:
C:\mysql-8.0.21-winx64\bin>mysql -u root -p Enter password: Z=Ydoh7eLky/ # 输入初始密码 Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 8 Server version: 8.0.21 Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> alter user user() identified by "123456"; # 新密码123456 Query OK, 0 rows affected (0.07 sec) mysql>