实验系统:Windows 10 家庭中文版 64位

MySQL版本:mysql-5.7.14


1.下载软件包mysql-5.7.14-winx64.zip,官网下载


2.解压


3.解压好后建议把解压后的文件夹改名为mysql5.7,并放到合适的位置,进入mysql5.7文件夹


4.将mysql5.7\bin文件夹的绝对路径加到环境变量PATH中


5.复制一份my-default.ini文件到当前文件夹并改名为my.ini


6.修改my.ini文件,

将[mysqld]下的basedir和datadir项的#注释去掉,

修改basedir的值为mysql5.7文件夹的绝对路径,

修改datadir的值为数据库数据存储的物理位置,一般为basedir的值加上\data。

注意!路径值最好用双引号引起来,避免路径中有空格导致找不到位置的情况。


7.以管理员身份运行cmd,进入mysql5.7的bin目录,

输入

mysqld --install

安装mysql服务,

成功后会提示Service successfully installed;

接下来输入

mysqld --initialize

初始化mysql,没有任何提示表示成功;

然后输入

net start mysql

启动mysql服务,等出现MySQL服务已经启动成功,表示mysql服务已经在系统中运行,

你可以在系统的服务中找到名为MySQL的服务。


8.登录mysql,5.7版本的mysql在你按以上步骤安装成功后已自动为root用户随机设置了密码,

这样你就无法像之前版本不设置密码时一样直接登录和利用mysqladmin为root设置密码了。

这时我们采取的办法是,

首先关闭MySQL服务:

net stop mysql

服务成功停止后运行:

mysqld --skip-grant-tables

如出现任何防火墙提示一律允许,

输入后命令提示符会卡在那里,

--skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证,

此时MySQL服务已经以一种无权限认证的方式正在运行,不要关闭这个cmd窗口。

这时我们需要新打开一个cmd窗口,同样要用管理员身份运行,

同样进入mysql5.7的bin目录,

此时我们输入

mysql -u root

后按回车就可以成功登录到mysql,

登录到mysql后我们就可以重置密码了。

以无权限方式登录mysql不能通过set password,alter user等方式来设置密码,

但可以通过直接修改user表的方式修改密码,

输入命令:

mysql> use mysql;

# 修改localhost下root用户的密码为root,password()是加密函数。

# 注意!新版本的mysql.user表中用authentication_string字段代替了password字段。

mysql> update user set authentication_string = password('root') where user = 'root' and host = 'localhost';

# 更新权限

mysql> flush privileges;

此时,退出mysql。

重启电脑,让mysql服务重新以正常的方式启动。

重启电脑后,mysql服务会自动启动,如果没有启动,就手动启动

net start mysql

这时就可以用设置的密码登录mysql,

mysql -u root -p
password: root

此时当use mysql表时会提示再次修改密码,根据提示修改就可以:

mysql> alter user root@localhost identified by 'root';


至此,mysql安装全部完成。


9.修改字符编码:

修改mysql配置文件,添加下列内容(注意[mysqld])

[client]
default_character_set=utf8
[mysql]
default_character_set=utf8
[mysqld]
character-set-server=utf8

修改完后重启mysql服务。