今天在Windows上安装Mysql的时候,去官网上下了一个最新版本的Mysql5.7.10绿色版,但是之前网上安装方式都过时了,比如会报一些常见的错误“[ERROR] Fatal error: Can't open and lock privilegetables: Table 'mysql.user' doesn't exist”,毕竟是开源的东西,官方文档比较全,自己动手丰衣足食啊。下面是我参考官方文档的安装步骤。

  1.解压下载的mysql安装包,复制mysql-default.ini,然后重命名为mysql.ini。Mysql启动的时候会去寻找这个名字为mysql.ini的文件。

  2.编辑mysql.ini,在[mysqld]下编辑basedir和datadir目录,如果没有自行添加,其中"#"是注释的意思。

[mysqld]
# set basedir to your installation path
basedir=E:\\mysql
# set datadir to the location of your data directory
datadir=E:\\mydata\\data

  注意的是在windows下的路径要使用"\\"。

  对于mysql的其他配置选项其参考:http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html

  3.初始化Data数据目录

    使用cd命令,到达bin目录下面,或者将bin目录的文件夹路径添加到环境变量中的path中去。

    运行以下其中的任何一个命令即可:

bin\mysqld --initialize
bin\mysqld --initialize-insecure

    这两条命令的共同点是:

    1.如果数据目录不存在,那么创建;

    2.如果数据目录中有数据存在,将会产生以下错误:

[ERROR] --initialize specified but the data directory exists. Aborting.

    不同点是:

    1.mysqld --initialize 命令会创建一个'root'@'localhost'超级账户,并且会分配给一个随机的密码,这个密码可以在mysql的错误日志文件中看到,一般错误日志文件是在data文件夹下名字为“你的主机名-Pc.err”的文件,其中有这么一行“[Note] A temporary password is generated for root@localhost: wYoV/8xVpycV”。

    2.mysqld --initialize-insecure 命令也会创建一个'root'@'localhost'超级账户,但是密码为空。没有密码的情况,只能用root在本机登录,远程访问不了。

  4.修改root的密码:

   1.使用mysqld --initialize命令初始化数据的情况下,修改密码按照以下方式:

     使用mysqld --console 启动mysql数据库;

     这样表明是启动成功了:

     

如何安装tables库 table installment_html

     使用另一个cmd窗口,用上边给的随机的密码登录mysql:mysql -u root -p ,然后执行:ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

   2.使用mysqld --initialize-insecure命令初始化data数据的情况下:

     使用mysqld  --console 启动数据库;

     使用另一个cmd窗口,输入以下命令:

mysql -u root
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

     

   到此即完成mysql数据库绿色版的安装。