前言
MySql的安装有两种方式,一种是zip解压缩版本的安装,还有另外一种是msi的版本的安装,今天笔者作死重装了一次系统,之前安装的msi版本的不能用了,索性狠心将盘符都格式化了。想想之前,使用解压缩版本的种种问题,内心充满纠结,但是前行的路上怎么能畏缩不前呢?于是咬咬牙,好吧,这次就使用解压缩版本的吧。
一、解压缩版本的下载
解压缩版下载链接:https://dev.mysql.com/downloads/mysql/
二、下载完解压缩
当我们在官网下载完mysql之后,将之解压缩到相关的目录下,如下图所示:
三、配置环境变量
我的电脑->属性->高级->环境变量->path,然后添加如下图的路径(注意,是添加,不是覆盖啊):
四、修改配置文件
设置完mysql的环境变量之后,这时候就需要修改配置文件了。打开安装的目录如下:
这时候你会发现,5.7版本的一个坑爹的地方,那就是没有ini文件,惊不惊喜?意不意外?是的,笔者也觉得很惊喜,甚至想打人。好吧,既然没有ini文件,那就自己创建一个吧,创建的ini文件如上图所示,然后再文件中添加了如下的配置:
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=E:\Mysql-5.7.21-winx64
# 设置mysql数据库的数据的存放目录
datadir=E:\Mysql-5.7.21-winx64\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
好了总算配置完了,现在可以运行了吧。
五、在管理员权限下面运行cmd(注意一定要是管理员权限不然的话权限不够哦)
5.1安装
以管理员身份运行cmd(一定要用管理员身份运行,不然权限不够),
输入:“cd E:\Mysql-5.7.21-winx64\bin”进入mysql的bin文件夹(不管有没有配置过环境变量,也要进入bin文件夹,否则之后启动服务仍然会报错误2)
输入mysqld -install(如果不用管理员身份运行,将会因为权限不够而出现错误:Install/Remove of the Service Denied!)
出现“service successfully installed”那就说明安装成功了。
5.2启动mysql
哈哈哈,经过一番苦战,终于安装成功了,现在启动mysql服务,然后就可以使用了吧?想想就贼开心。
嗯,没错,现在开始cmd输入命令:net start mysql....mysql服务无法启动,服务没有报告任何错误....你妹的,什么鬼?服务安装成功了你还不给我启动?不给我启动,你倒是报告一下错误啊?没有错误是什么鬼?砸电脑吧?苦逼屌丝没钱,想想还是继续找问题吧...一点一点解决...百度啊百度啊...终于找到了,原来是因为我们安装服务成功了之后,并没有初始化mysql,好吧,那就输入命令:“mysqld --initialize”(如果没有初始化,那么就不存在data目录了,所以自然就不能启动成功了),启动完了之后,终于可以登录了吧?
5.3登录数据库
终于啊,经过一段心酸的路程,可以登录了吧,好,那么开始登录,命令一顿敲:“mysql -u root -p root”,提示输入密码,好吧那就输入root吧,毕竟初始密码没什么问题的话都会是root,输入之后,一脸懵逼,错误,密码错误密码错误,什么鬼?我都没改过密码没设置过密码好吗?
这时候,就不得不提到mysql5.7相较于mysql5.6的坑爹之处了,原来,mysql5.7无法启动服务,你就必须进行初始化,而mysql5.6安装完配置好环境变量之后就可以登陆了,而且,还有一个坑就是mysql5.7在你初始化之后会随机帮你分配一个密码?对的,没听错,你没有听错,就是会随机分配给你一个随机密码,而且没有提示哦!那怎么办?不提示我们怎么知道密码是什么呢?这时候,你就不得不在mysql的安装目录中寻找“*.err”文件了,找到打开,然后你就会发现,密码就在里面,如下图所示:
上图的红色框中加蓝色的部分就是密码了,怎么样,是不是很好猜?
好吧,坑爹虽然是坑爹了一点,但是现在好歹我们可以登录了,只要登陆了我们就可以改掉密码了。
5.4修改密码之前的小插曲
终于登陆进来了,我的那个开心哦,好吧,先不急着改密码,先装叉一波,输入命令:“show databases;”,让我先看看里面的数据库吧,哈哈,boom,一顿刺耳的报错声音,然后就是错误了提示了:ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement....明明我的密码没有错啊,但是为什么不行呢?原来,初始化的密码太简单了,不符合mysql的安全要求,我去....上面的密码太简单了,不符合要求....好吧,那我就先修改一下密码吧....
好,修改密码,命令一顿敲:“SET PASSWORD = PASSWORD('123456');”,其中123456是密码,嗯对的没错,这个密码比随机分配的密码困难多了,而且还很安全,呵呵...
终于,解压缩版的mysql已经安装配置成功了...总算是解决了...晚安...