本篇文章给大家带来MysqL重新安装的相关知识,相信有不少人遇到过需要重新安装MysqL的经历,忘记root密码怎么办?不同的系统又应该怎样 *** 作,下面我们就来看一下重新安装MysqL会遇到的问题,应该怎么解决,希望对大家有帮助。
近日遇到一个问题 重新安装了一下系统,但庆幸的是MysqL的安装目录 没有安装在系统盘。
那么如何找回之前MysqL内的数据?长话短说,先讲一下来龙去脉。涨知识了
你是否有在linux下安装过MysqL,并且忘记了MysqL root密码的经历?(或者windows下)你是否有配置过jdk环境变量的体验?哈哈~ 相信很多小伙伴和我有过一样的经历。
发现密码登录不进去是不是快疯了?安装一个MysqL都经历了多种磨难,甚至有小伙伴因为数据库问题 ~ _~ !一次没有安装好导致再来安装都不能成功。甚至后面还重装系统了。
那么下面将会是解决你所有疑问的答案:以 MysqL8.0 + windows 环境 为例:
在你进行安装的的时候如果没有选择路径那么MysqL默认安装在C盘,如果你有指定安装路径
那么找一下MysqL的安装在那里了
如果你之前安装过MysqL那么先检查一下服务里面有没有MysqL服务 此电脑==》管理==》服务和应用程序==》服务 如下图
卸载MysqL服务,如果有多余的服务可以通过
sc.exe delete 服务名 删除没用的服务,删除后需要重启电脑
sc.exe delete MysqL
也可以用查看服务属性找到服务的位置MysqLd.exe remove删除(这种方式不一定有效,如果路径出了问题的话,)
如果原文件还在则可以通过这个路径下的MysqLd.exe remove删除服务
我们来做个实验,体验一下解压缩版的(绿化的)MysqL怎么配置,需要在一台没有安装过MysqL的windows下执行,可以用VMware虚拟即安装一个windows环境,关于windows的下载可以在我的安装 *** 作系统中找的到,https://msdn.itellyou.cn/有所有windows系统的ed2k链接的镜像,下载下来即可
第一步、去MysqL官网下载一个免安装版的MysqL的zip包https://dev.MysqL.com/downloads/MysqL/
然后进行解压缩,进入解压缩的目录下查看一下有上面文件
第二步、安装服务 和 初始化MysqL通过windows徽标 + X 再通过 A 以管理员身份运行powerShell窗口
注意一定要以管理员身份运行不然后面执行会报错(CMD也行同样管理员身份)
切换到解压缩目录下:
相应的命令
先 盘符:/
然后 cd 到解压缩目录
当然也可以按住Shift + 鼠标右键 会有一个powershell窗口
如下图
正式开始安装服务 这个MysqLd实际就是MysqL的服务程序,所以运行MysqLd就是运行MysqL服务
.\MysqLd.exe install
如果提示MysqL已经安装了则在服务里找到MysqL服务,启动MysqL服务,或者通过MysqL.exe remove移除服务先要stop停止
初始化
.\MysqLd.exe --initialize-insecure --user=MysqL
如上图会得到data文件夹,里面存放的是数据库信息,删除后数据库也不在了,需要重新 *** 作才可
还不能登录需要手动启动服务
第一次使用MysqL 可以通过MysqL.exe -u root -p直接登录进去,如果数据库里没有内容则删除data文件夹(手动关闭MysqL服务才可以删除)
然后重新手动启动服务,重新初始化数据库如何登录进(第一次不需要密码) 将下面的123456改成你想要的密码即可
修改root密码(需要在MysqL的bin目录下 *** 作,如果配置了环境变量就不需要在bin目录下).\MysqLd.exe -u root -p
use MysqL;
ALTER USER `root`@`localhost` IDENTIFIED BY '123456';
如果你只是想安装MysqL那么上面已经安装完了下面是忘记root密码,进入数据库修改的 *** 作
第1步、关闭服务 也可以通过服务手动关闭(前面的截图),或者输入下面的命令
net stop MysqL
第2步、(管理员身份)cd 到MysqL主目录的bin目录下
.\MysqLd.exe --console --skip-grant-tables --shared-memory
如图
需要另外开一个powershell窗口在bin目录下 按住Shift 鼠标右键会有一个在此处打开powershell窗口
然后登录进去(不需要输密码)直接回车即可登录进去
.\MysqL.exe -u root -p
启用MysqL数据库
use MysqL;
这里的 authentication_string不是密码后面 *** 作才是真正修改密码的
update user set authentication_string='' where user='root';
上面只是为了运行root无密码登录,因为前面通过--skip-grant-tables选项导致修改密码的sql : ALTER USER `root`@`localhost` IDENTIFIED BY '123456';不能修改密码
退出登录
quit
并且把那个执行命令带有 --skip-grant-tables 窗口关闭
然后启动MysqL服务
net start MysqL
按照正常的登录,不需要输root密码即可登录进去
.\MysqL.exe -u root -p
use MysqL;
修改root密码
ALTER USER `root`@`localhost` IDENTIFIED BY '123456';
在使用MysqL的过程中是否有疑问?MysqL的数据源到底放在了哪里?下面解答
MysqL的数据源实际就在data文件夹内,我们进行一个实验尝试一下
使用目的:证明MysqL的数据源在data文件夹下,并且可以通过指定数据源路径,直接使用MysqL找到原来的数据。即使现在电脑上没有安装MysqL,然后通过复制原来MysqL安装目录,来继续使用原来的MysqL数据库和数据;
实验部分:为了实验有效果我们创建一个数据库,这里干脆叫demo(如果你本身有数据库那么更好直接下面实验)
下面的使用即使没有安装过MysqL数据库,也可以 *** 作,只需MysqL的主目录即可(数据data文件夹下)
第一步、关闭MysqL服务 net stop MysqL第二步、新建my.ini文本文件,用来指定MysqL位置和数据源位置将MysqL主目录下的data文件夹复制 到D:/盘根目录下 需要关闭服务才可以移动,否则会提示后台占用!
新建 my.ini 文本文件(干脆放在D:\mysql-8.0.18-winx64 即放在主目录下,5.5以前有这个文件后面都没有了)
写入如下的代码,指定数据库的主目录,数据源路径 以及端口
[MysqLd]basedir = D:\mysql-8.0.18-winx64datadir = D:\dataport =3306然通过MysqLd启动MysqL服务如下图
此时其实也可以通过第三方工具链接MysqL 例如Navicat
下面通过命令连接,需要另开一个窗口
可以看到这里连上了MysqL并且是原先的数据库!!
反例测试 一、关闭前面所以powershell窗口
在前面的基础上 将my.ini删除,这样MysqLd就找不到数据源,看下它提示了什么错误
这里因为没有my.ini告诉MysqLd程序MysqL主目录在那以及数据源在那,导致执行失败
现在通过.\MysqL.exe -u root -p肯定连接不上因为MysqL服务都没有启动起来
反例测试 二、将my.ini的datadir删除,如下图
然后和前面一样试试
此时报了一堆错误,具体错误自己看下错误的提示 ,然后你只需要根据错误的提示修改即可,
比如说第一个ERROR 提示 不能找到错误信息文件
error-message file只需要在配置文件 指定即可正确的位置即可
【推荐:mysql视频教程】
总结以上是内存溢出为你收集整理的mysql重新安装的所有疑问都在这里全部内容,希望文章能够帮你解决mysql重新安装的所有疑问都在这里所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)