MySQL安装_mysql-8.0.15-winx64.zip全过程(解决安装时报错)

安装MySQL总是有各种各样的错误,我今天安装的时候把全过程及报错的解决都贴上去了,方便有同样错误的朋友参考。如果不想看到错误解决的过程只想顺畅地安装MySQL,直接拉到最下面的第12点,有完整的不报错的安装步骤~

1、从官网下载安装包mysql-8.0.15-winx64.zip。

2、下载完安装包就可以解压了

我解压的路径如下(D是我自己起的名字,实际是E盘):

注:解压完不会在其他地方多出另外的东西,因为解压是纯净版的。

3、启动MySQL

我想启动MySQL,于是我双击E:\MySQL\mysql-8.0.15-winx64\bin的mysql.exe,一闪而过。为了看清楚启动时的提示,在E:\MySQL\mysql-8.0.15-winx64\bin目录输入“cmd”,即可直接跳转到该目录下的cmd,如下:

接着输入mysql.exe运行MySQL,如下:

4、解决报错Can't connect to MySQL server on 'localhost' (10061):

ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)

帖子1说:打开“任务管理器”->"服务",看是否有MySQL服务,我打开了是有的,只是没有启动。我右键启动此服务,报错说找不到文件。

   

原因是我之前用"mysqld -install"安装过一次,但是那个文件已经被我删除了,为了验证是否如此,我打算再次运行”mysqld -install“,这样如果已经安装过就会报错,还是在步骤3打开的cmd所在文件夹bin下输入此命令“mysqld -install”(此命令需要用管理员的身份运行),显示如下:

果然如此,因为这个 E:\MySQL\MySQL_Server_Installed整个文件夹之前已经被我删除了,并且现在新的MySQL解压的路径是E:\MySQL\mysql-8.0.15-winx64。所以可以断定是历史遗留问题。

正常的思路是删除此服务再重装,可是我在刚才的服务界面里选中MySQL并打开服务,在弹出的对话框里愣是找不到删除服务的选项。这里可以百度找一下删除系统服务的shell命令,不过我先不这么做,打算百度找一下“MySQL The service already exists”的错误解决办法。

5、解决上述“The service already exists(服务已存在)”问题:

帖子2解决了我的问题,它说可以用命令"sc query mysql"(sc估计是service的意思)查询是否已安装mysql服务,用“sc delete mysql”删除mysql服务,这两个命令同样需要用管理员的身份,运行如下:

再次安装“mysqld -install”,结果如下:

MySQL服务安装成功了。

6、解决上述解决到一半的问题Can't connect to MySQL server on 'localhost' (10061):

安装成功是解决服务问题,第一个错误“ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)”还没解决,回到帖子1,里面说启动mysql服务是用命令“net start mysql”或者直接“任务管理器”->"服务"右键启动MySQL服务,这里我选择用命令,如下:

报错了,那换种方法,右键启动MySQL服务,如下:

点击后MySQL的状态变化为:"已停止"->"正在启动"->"已停止"。

好吧是一样的。

7、解决“MySQL无法启动,服务没有报告任何错误”这个问题:

帖子3说:是因为没有初始化的话没有data目录,自然无法启动成功。我看了一眼我的解压目录,里面的确是没有data这个文件夹。

所以用shell命令”mysqld --initialize“初始化一下,如下图所示,运行该命令需要一点时间。

shell命令的世界里,没有消息就是好消息,我打开该解压目录,一看,data文件夹果然出来了(其实在该命令运行的过程中,因为时间比较长,我悄咪咪地打开了解压目录,并进入了生成的data文件,看到了里面一个个文件的生成,有种欣慰的感觉:果然此帖子的博主说的对,这个命令就是初始化data文件夹用的)。

再次输入命令”net start mysql“,如下图所示:

好的,启动成功了,我露出了姨妈笑。

8、启动成功后运行”mysql.exe“,报错如下:

解决此问题:

帖子4说:改成命令mysql -u root -p运行,运行如下:

其中password因为我没有设置过所以直接按回车,就出现了这个错误,按照这种情况是说密码错误,可是密码是啥?有的帖子说刚才运行”mysqld --install“时应该为“mysqld --install --console”,这样才能让它帮我们初始化的密码显示在控制台上才能看见,然而我已经运行过了,应该到哪里找密码呢?

9、找到系统给的初始化密码的位置:

帖子5说:初始化密码就在错误日志文件里,日志文件一般是在运行“mysqld -install"后生成的data文件夹里,后缀为".err"文件,注意一下不同电脑该日志文件名不一样,我的日志文件名为:"DESKTOP-PK3AO21.err",位置如下图所示:

打开就能看到初始化密码了,是一串奇怪的符号:

因为很奇怪,所以输入密码时注意自己的输入法是中文的还是英文的,也要注意大小写。

输入之后就登陆成功了!

我弄了一个下午终于……不过不能每次都输入这么非人类的密码,所以修改一下密码吧~

10、修改密码:

还是刚才的帖子5说的,修改密码是 alter user root@localhost identified by '新密码',不过里面说密码要满足一定复杂度,我设置了'amiao'倒是没什么问题。

至此大功告成,我弄了一个下午,总算见光明了。

11、总结一下:

我这里安装的是最新版本的mysql,虽然说解压版的比较干净,但是里面没有配置文件my.ini了,所以发生很多错误时找的解决办法都要对这个文件动刀,然而巧妇难为无米之炊啊。好多都是说自己新建一个配置文件给放到bin同级的目录下,然而官方都把这文件隐藏掉了,再这样做岂不是很回退?所以不应该自己新建my.ini,而是在没有my.ini文件的基础上寻找解决办法。

另外因为是解压版的,还得自己用shell命令install一下,就各种问题。不过仔细一想,一个官方的安装包,不可能给每个用户安装都要用户自己去寻找N多帖子(像我就找了五个有效帖)才能安装成功,肯定得有一个正常的安装步骤,所以,我整理了一下上面的安装步骤,来个按顺序不报错的开心安装mysql的步骤,如下。

12、windows完整的不报错的安装mysql步骤:

1)下载压缩包并解压:

官网下载安装包mysql-8.0.15-winx64.zip并解压。

2)查看是否有之前安装过的MySQL服务:

打开“任务管理器”->"服务"(我是win10),看是否有MySQL服务,如果有,那就是用户自己之前安装的残余物,卸载掉,卸载步骤见步骤3,如果无直接跳步骤4。

3)卸载原来的MySQL服务:

以管理员权限打开cmd,任意目录下,输入命令“sc query mysql”查询MySQL服务是否真的存在,输入命令“sc delete mysql”删除旧MySQL服务。

4)安装MySQL服务: 

以管理员权限打开cmd,转到该zip的解压目录的bin目录下,输入命令“mysqld --install --console”,安装完会提示成功,并会给出登陆初始化密码,是一段奇怪的字符,如果此时不小心关掉cmd忘记此密码或者没有显示初始化密码(比如不小心只输入了“mysqld -install”),没关系,后面的步骤会说明如何查看此密码。

5)初始化MySQL环境:

这是必须初始化的,不初始化的话zip的解压目录下会没有data文件夹,没有data文件夹,直接启动mysql服务(用命令net start mysql)的话,会提示MySQL无法启动并且服务没有报告任何错误。初始化环境还是需要在该zip的解压目录的bin目录的cmd下,输入命令“mysqld --initialize”,运行需要一定时间,因为它在帮你生成data文件夹(路径与bin文件夹同级)及下面的文件。运行完如果没有提示任何,就证明初始化成功了。

6)启动MySQL服务:

还是在该zip的解压目录的bin目录的cmd下,输入命令“net start mysql”,这时应该可以启动成功了。如果不想用命令行,也可以在“任务管理器”->“服务”下找到MySQL服务,右键启动。

7)查看MySQL给的第一次连接的密码:

打开步骤5)生成的data文件夹下的后缀为“.err”文件,此文件是日志文件,不同电脑日志文件名会不一样,我的是“DESKTOP-PK3AO21.err”,打开看到“[Server] A temporary password is generated for root@localhost: <eoXZ;i-(0uf”,后面的这串“<eoXZ;i-(0uf”就是初始化密码,因为比较复杂待会键入的时候要注意大小写,以英文的输入法键入。

8)连接MySQL:

还是在该zip的解压目录的bin目录的cmd下,输入命令“mysql -u root -p”,回车,提示你输入密码,就输入步骤7)找到的那串密码。

9)改密码:

因为那串密码非人类,需要改密码,在mysql>输入命令“alter user root@localhost identified by 'amiao' ”,amiao就是你的新密码,可任意设置,不过有的帖子说这个密码需要满足一定复杂度(比如“abcD001!”),我试了“amiao”就可以,所以说看人品。

完成!

备注:2021.10.12最新测试,8.0.26版本测试通过。

另外如果遇到其他问题,直接卸载本机已有的mysql再按我这个教程第12点安装即可,我遇到一个新问题安装时没问题,启动net start mysql时说找不到这个服务并且报错Net Helpmsg 2185,原因是我电脑已有一个叫“mysql80”的service而不是mysql。但是影响了我启动mysql的服务。我将mysql80这个卸载,删掉我刚安装的8.0.26 create好的data目录。再安装,顺利成功。

引用\[1\]:在安装MySQL8,可能会遇到mariadb-libs被mysql-community-libs-8.0.xx-1.el7.x86_64所取代的报错。\[1\]引用\[2\]:在CentOS7安装MySQL,常见的错误依赖问题是warning: mysql-community-libs-8.0.28-1.el7.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID 3a79bd29: NOKEY error: Failed dependencies: mariadb-libs is obsoleted by mysql-community-libs-8.0.28-1.el7.x86_64。\[2\]引用\[3\]:解决这个问题的方法是先卸载mysql-libs,然后再执行安装命令。具体步骤是先执行yum remove mysql-libs命令卸载mysql-libs,然后再执行rpm -ivh mysql-community-libs-8.0.28-1.el7.x86_64.rpm命令进行安装。\[3\] 所以,如果你在安装MySQL8遇到mariadb-libs被mysql-community-libs-8.0.xx-1.el7.x86_64所取代的报错,你可以先卸载mysql-libs,然后再执行安装命令来解决这个问题。 #### 引用[.reference_title] - *1* [CentOS7安装MySQL8报错mariadb-libs is obsoleted by mysql-community-libs-8.0.xx-1.el7.x86_64](https://blog.csdn.net/u012069313/article/details/123185605)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [Linux_Centos7在安装Mysql常见错误依赖失败——error: Failed dependencies:mariadb-libs is obsoleted](https://blog.csdn.net/qq_51929833/article/details/122966804)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值