因为项目需要,之前安装的Mysql5.5版本不兼容,需要换成最新的mysql8.0.xx版本(示例:8.0.15),然后我就开始了坑爹的踩坑开始。
好了,废话不多说了,直接开始了。
刚开始嘛,肯定是卸载掉自己之前的老版本mysql啦,步骤和网上一搜一大片的的也没有什么特殊的,我就直接贴了:
1、停止mysql服务
net stop mysql
2、卸载mysql服务
cd F:\Install\MySQL\mysql-8.0.15-winx64\bin(mysql安装的地址)
mysqld -remove
3、删除文件
删除F:\Install\MySQL\整个文件夹
4、删除注册表
启动cmd->输入regedit->搜索mySQL,右键全部删除
好了,老版本删完了,现在开始装新版本了,根据电话系统去下载对应的mysql文件就可以了。下载地址(mysql官网:https://dev.mysql.com/downloads/installer/)
正式开始安装新版本的mysql了:
1、将下载mysql文件进行解压,然后放在你要安装的磁盘中;
2、创建my-default.ini配置文件,我解压之后的文件没有这个配置文件,所以是自己添加的,内容:
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录 根据自己的安装目录修改
basedir=F:\Install\MySQL\mysql-8.0.15-winx64
# 设置mysql数据库的数据的存放目录 根据自己的安装目录修改
datadir=F:\Install\MySQL\mysql-8.0.15-winx64\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10000
# 服务端使用的字符集默认为
UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
wait_timeout=31536000
interactive_timeout=31536000
#sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8
3、进入安装目录,安装服务
cd F:\Install\MySQL\mysql-8.0.15-winx64\bin
mysqld -install(需要管理员身份运行)
4、初始化data,注意!注意!注意!一定不要手动创建!!!,因为初始的时候可以随机生成一个初始的root密码,初始化命令如下:
mysqld -initiaalize 执行此命令则生成一个默认的密码
mysqld -initialize-insecure 执行此命令则默认没有密码
注:我的示例中是默认的没有密码的,命令奉上:mysqld --initialize-insecure --user=mysql
这时候安装目录下应该已经生成了data文件夹,如果是有默认密码的,可以去data文件夹里面去找以.err结尾的文件,里面有初始的密码(搜索password即可看到)
5、启动服务:net start mysql
6、登入修改密码:
mysql -u root -p
第一次登入密码为空,直接enter进入
查看用户信息:
select host,user from mysql.user;
设置密码:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '设置你的密码';
注:如果你在安装完了mysql服务之后,发现用命令无法正常启动mysql,你可以使用去电脑的服务里面去手动启动mysql的服务,再回到mysql里面,登录之后看一下是不是mysql的库没有了(查一下mysql.user表在不在就可以了)。如果不在的话就试着重启一下电脑,然后再重新装一下mysql的服务,使用我示例的那个命令。就可以解决啦!
好啦,写的不好的地方希望各路大神可以不吝赐教!
需要转载的请注明出处哈。