1、下载
1 MySQL Community Server 5.7.18 2 https://dev.mysql.com/downloads/mysql/
2、解压
如果想要让MySQL安装在指定目录,那么就将解压后的文件夹移动到指定目录,如:D:Program Filesmysql-5.7.18-winx64
3、初始化
MySQL解压后的 bin 目录下有一大堆的可执行文件,执行如下命令初始化数据:
注意cmd需要以管理员方式运行,不然会报错:
mysqld: Could not create or access the registry key needed for the MySQL application to log to the Windows EventLog. Run the application with sufficient privileges once to create the key, add the key manually, or turn off logging for that application.
1 cd D:Program Filesmysql-5.7.18-winx64in 2 3 mysqld --initialize-insecure
4、启动MySQL服务
执行命令从而启动MySQL服务
1 #进入可执行文件目录 2 cd D:Program Filesmysql-5.7.18-winx64in 3 4 #启动MySQL服务 5 mysqld
5、启动MySQL客户端并连接MySQL服务
由于初始化时使用的【mysqld --initialize-insecure】命令,其默认未给root账户设置密码
1 #继续在bin目录下执行 2 mysql -u root -p 3 #提示输入密码,直接回车
输入回车,见下图表示安装成功:
到此为止,MySQL服务端已经安装成功并且客户端已经可以连接上,以后再操作MySQL时,只需要重复上述4、5步骤即可。但是,在4、5步骤中重复的进入可执行文件目录比较繁琐,如想日后操作简便,可以做如下操作。
6、添加环境变量
【右键计算机】
-
-
》【属性】
-
-
》【高级系统设置】
-
-
》【高级】
-
-
》【环境变量】
-
-
》【在第二个内容框中找到 变量名为Path 的一行,双击】
-
-
> 【将MySQL的
bin
目录路径追加到变值值中,用 ; 分割】
注意:使用英文标点“;”。
例如我的路径为:D:Program Filesmysql-5.7.18-winx64in,将其加到Path的最后,确认退出。
如此,在终端中直接输入mysql -u root -p就可以进入mysql。
7、将MySQL服务制作成windows服务
上一步解决了一些问题,但不够彻底,因为在执行【mysqd】启动MySQL服务器时,当前终端会被hang住,那么做一下设置即可解决此问题:
1 # 制作MySQL的Windows服务,在终端执行此命令: 2 "c:mysql-5.7.16-winx64inmysqld" --install 3 4 # 移除MySQL的Windows服务,在终端执行此命令: 5 "c:mysql-5.7.16-winx64inmysqld" --remove
注册成服务之后,以后再启动和关闭MySQL服务时,仅需执行如下命令:
1 # 启动MySQL服务 2 net start mysql 3 4 # 关闭MySQL服务 5 net stop mysql
改密码
通过MySQL命令行,可以修改MySQL数据库的密码,下面就为您详细介绍该MySQL命令行,如果您感兴趣的话,不妨一看。
方法
1: 用SET PASSWORD命令
mysql -u root
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');
推荐这种方法,实验成功,下边的方法是网上找的,可能需要对应不同的mysql版本能成功。
格式:mysqladmin -u用户名 -p旧密码 password 新密码
1、给root加个密码ab12。首先在DOS下进入目录mysqlin,然后键入以下命令
mysqladmin -u root -password ab12
注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。
2、再将root的密码改为djg345。
mysqladmin -u root -p ab12 password djg345
(注意:和上面不同,下面的因为是MYSQL环境中的命令,所以后面都带一个分号作为命令结束符)
3、命令行修改root密码:
mysql> UPDATE mysql.user SET password=PASSWORD(’新密码’) WHERE User=’root’;
mysql> FLUSH PRIVILEGES;
4、显示当前的user:
mysql> SELECT USER();