您的当前位置:首页正文

初始化mysql的数据库失败怎么办

2020-11-27 来源:筏尚旅游网

推荐:《mysql视频教程》

安装MySQL8,安装时初始化数据库失败

大概过程

  • 下载解压到你想要安装的目录例如我这次是直接在C盘下。C:\mysql-8.0.17-winx64

  • 配置环境变量,把C:\mysql-8.0.17-winx64\bin加到PATH环境变量里后边即可注意“;”号

  • 在C:\mysql-8.0.17-winx64这个目录下新建my.ini文件。

  • 编写my.ini文件内容,内容容易出错

  • 初始化数据库,【我就是卡到这里了】初始化成功的话或有MySQL的默认密码

  • 安装数据库

  • 启动登录数据库【第一次使用5中的默认密码登录】

  • 修改密码

  • 如图是我解压的目录结构及my.ini位置
    在网上查询到一些教程作为参考,有一个解决办法是在一条评论里看到的,找不到原博客了,解决办法如下图,是把datadir那一行给注释掉。

    主要遇到的问题是,在my.ini文件的编写上,可能会有格式、内容上的错误,在格式上要注意“\”"\""/"都要试试,还有**“C:\mysql-8.0.17-winx64”** 是否加双引号也试下。以下是我的my.ini文件,大体内容与参考博客相同,标出位置是我报错之后修改的一些地方。

    my.ini内容
    数据库初始化时命令行出现的报错如下:

    C:\mysql-8.0.17-winx64\bin>mysqld --initialize --console
    2019-08-24T13:33:22.622321Z 0 [System] [MY-013169] [Server] C:\mysql-8.0.17-winx64\bin\mysqld.exe (mysqld 8.0.17) initializing of server in progress as process 8404
    2019-08-24T13:33:22.624188Z 0 [Warning] [MY-013243] [Server] --character-set-server: The character set UTF8MB3 is deprecated and will be removed in a future release. Please consider using UTF8MB4 instead.
    2019-08-24T13:33:22.625619Z 0 [ERROR] [MY-010457] [Server] --initialize specified but the data directory has files in it. Aborting.
    2019-08-24T13:33:22.625635Z 0 [ERROR] [MY-013236] [Server] The designated data directory C:\mysql-8.0.17-winx64\data\ is unusable. You can remove all files that the server added to it.
    2019-08-24T13:33:22.643590Z 0 [ERROR] [MY-010119] [Server] Aborting
    2019-08-24T13:33:22.643744Z 0 [System] [MY-010910] [Server] C:\mysql-8.0.17-winx64\bin\mysqld.exe: Shutdown complete (mysqld 8.0.17) MySQL Community Server - GPL.

    error

    问题应该就是data文件夹的问题,那时在C:\mysql-8.0.17-winx64目录下根本就没有新生成的data文件夹,注释掉my.ini文件中datadir那一行error就没了,data文件夹也出现了,如下图:
    它终于出现了,我的天哪
    warring的解决办法就根据其提示把UTF8换成UTF8MB4就行。改动地方均在上图标注了出来。

    2019-08-24T13:33:22.624188Z 0 [Warning] [MY-013243] [Server] --character-set-server: The character set UTF8 is deprecated and will be removed in a future release. Please consider using UTF8MB4 instead.

    最后初始化成功,如图:

    总流程
    总流程

    C:\mysql-8.0.17-winx64\bin>mysqld --initialize --console
    2019-08-24T13:37:11.590803Z 0 [System] [MY-013169] [Server] C:\mysql-8.0.17-winx64\bin\mysqld.exe (mysqld 8.0.17) initializing of server in progress as process 2484
    2019-08-24T13:37:15.862830Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: 37swG%65Qjf1
    2019-08-24T13:37:17.783854Z 0 [System] [MY-013170] [Server] C:\mysql-8.0.17-winx64\bin\mysqld.exe (mysqld 8.0.17) initializing of server has completed
    
    C:\mysql-8.0.17-winx64\bin>mysqld --install
    The service already exists!
    The current server installed: C:\mysql-8.0.17-winx64\bin\mysqld.exe MySQL
    
    C:\mysql-8.0.17-winx64\bin>net start mysql
    MySQL 服务正在启动 .
    MySQL 服务已经启动成功。
    
    
    C:\mysql-8.0.17-winx64\bin>mysql -u root -p
    Enter password: ************
    Welcome to the MySQL monitor. Commands end with ; or \g.
    Your MySQL connection id is 8
    Server version: 8.0.17
    
    Copyright (c) 2000, 2019, 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 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '111111';
    Query OK, 0 rows affected (0.01 sec)
    
    mysql>
    显示全文