前言

在windows上安装Zip版MySQL(选译)

学习mysql的朋友们会发现5.7+版本的mysql变得比以前难安装了许多(当然我们可以选择installer版本,但是这样总感觉对学习mysql不太好),原因在于5.7版引入了一些更新,造成了一些新的坑,如果直接套用以前的教程肯定是行不通的。更新肯定有他的道理,不过这样对中国玩家也太不友好了。

环境: MySQL5.7+ windows7

参考文献

正文

从Zip档案安装MySQL的过程如下:

  1. 解压zip到你想要安装mysql的目录下

可选: 如果你打算使用MySQL benchmark工具和测试套件,你也可以选择debug-test版本的压缩包(译者注:非debug-test版约310MB,这个约380MB)

  1. 创建配置(option)文件
  2. 选择MySQL服务端类别
  3. 初始化MySQL
  4. 启动MySQL服务
  5. 对默认用户账号(root)进行安全处理

步骤一:解压缩

步骤二:创建配置(option)文件

如果你想在启动服务端之前指定一些启动选项,你可以在命令行指定他们,也可以把它们写到一个配置文件里。对于一些你每次都想运行的选项,使用配置文件是一个更好的选择,在以下情况下尤其如此:

  • 安装目录和data目录与默认路径不一样(C:\Program Files\MySQL\MySQL Server 5.7 and C:\Program Files\MySQL\MySQL Server 5.7\data)
  • 你需要调整服务端设置,比如指定内存大小,缓存大小,或者InnoDB设置。

当MySQL服务端在Windows环境下启动,它会尝试在几个地方寻找配置文件,比如Windows目录,C:\,和MySQL安装目录(到URL获取更详细的列表),Windows目录通常情况下像是C:\WINDOWS。你可以在命令行输入以下指令把它打印出来:

C:> echo %WINDIR%

MySQL会在每个路径首先寻找my.ini文件,然后再寻找my.cnf文件。然而,为了避免混淆,你最好只定义一个文件。当你的电脑使用一个boot loader不以C: 目录为启动驱动器的时候,你只能使用my.ini文件。

你可以用任何文本编辑器来编辑你的配置文件。举个例子,如果MySQL被安装在E:\mysql,然后data文件夹在E:\mydata\data目录,你可以创建一个配置文件,使用[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系统的文件路径使用双斜杠而不是反斜杠

因为自从MySQL5.7.6以后,Zip档案不再包含data目录。为了初始化MySQL,你需要使用 --initialize或者--initialize-insecure命令。(译者:见步骤四)

如果你想要把data放到一个不同的目录下你可以移动它,然后在配置文件里配置好新的路径。

步骤三:选择MySQL服务端类型

以下表格展示了Windows下可用的MySQL5.7服务端类别

名称 描述
mysqld 使用命名管道进行二进制优化

| mysqld-debug | 像mysqld一样,但支持完全调试和自动内存分配检查 |

上述所有服务端类别都为现代英特尔处理器进行了优化,但他们应当被运行在i386级或更高级别的处理器上。

每种服务端都支持同样一系列的储存引擎。使用SHOW ENGINES语句显示当前服务端支持的储存引擎。

所有Windows MySQL5.7服务端都支持数据库目录符号链接

初始化data目录

(译者注: 这一部分是与原文分离的,译者在这里选译一部分)

  1. 首先来到BASEDIR目录(安装目录)下
  2. 为了初始化data目录,使用--initialize或者--initialize-insecure选项调用mysqld命令。前者将为root账号生成一个随机密码(译者注:后者生成一个过期密码,可以不输密码直接登入)

使用以下命令:

C:\> bin\mysqld --initialize
# 或者
C:\> bin\mysqld --initialize-insecure

如果mysqld不在安装目录下,你必须为mysqld命令提供--basedir和--datadir选项,如下(译者注:这里用bash不怪我,不过也差不多就是了)

shell> bin/mysqld --initialize --user=mysql
--basedir=/opt/mysql/mysql
--datadir=/opt/mysql/mysql/data

或者如果你已经有一个配置文件

C:\> bin/mysqld --defaults-file=C:\my.ini --initialize

注意: MySQL服务端会在标准错误输出端写入错误信息,这个可能被重定向到了错误日志,你需要在错误日志查找错误信息,具体查看URL。在Windows下,你可以使用 --console选项,重定向输出信息到命令行

初始化data目录完毕后,启动MySQL服务端,然后连接到服务端。

如果你使用--initialize命令你需要输入初始化过程中生成的随机密码。

shell> mysql -u root -p
Enter password: (输入之前生成的随机密码)

如果是--initialize-insecure,你可以直接跳过输入密码。

shell> mysql -u root --skip-password

对默认用户账号(root)进行安全处理

修改root密码

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

[选译]MySQL5.7以上Zip版官方安装文档的更多相关文章

  1. MySQL5.7以上Zip版官方安装文档(选译)

    前言 在windows上安装Zip版MySQL(选译) 学习mysql的朋友们会发现5.7+版本的mysql变得比以前难安装了许多(当然我们可以选择installer版本,但是这样总感觉对学习mysq ...

  2. Linux rhel7 下MySQL5.7.18详细安装文档

    Linux rhel7 下MySQL5.7.18详细安装文档 本文安装MySQL5.7使用的是vm虚拟机rhel7操作系统 ,ftp文件传输是FileZilla3.27,远程连接xssh5.0 1 登 ...

  3. windows下如何安装配置mysql-5.7-m14-winx64(zip格式的安装)

    win7 64位下如何安装配置mysql-5.7.4-m14-winx64 1.   mysql-5.7.4-m14-winx64.zip下载 官方网站下载地址:http://dev.mysql.co ...

  4. 安装选择msi格式还是zip(windows下Nodejs zip版下载安装及环境变量配置)

    安装选择msi格式还是zip((windows下Nodejs zip版下载安装及环境变量配置)) -----以node.js 安装为例: 1,外观对比: ✿ 简单介绍一下node的作用: • node ...

  5. CentOS6.5下安装JDK1.7+MYSQL5.5+TOMCAT7+nginx1.7.5环境安装文档

    ----------------CentOS6.5下安装JDK1.7+MYSQL5.5+TOMCAT7+nginx1.7.5环境安装文档----------------------- [JDK1.7安 ...

  6. layuiAdmin pro v1.x 【单页版】开发者文档

    layuiAdmin std v1.x [iframe版]开发者文档 题外 该文档适用于 layuiAdmin 专业版(单页面),阅读之前请务必确认是否与你使用的版本对应. 熟练掌握 layuiAdm ...

  7. layuiAdmin std v1.x 【iframe版】开发者文档

    layuiAdmin pro v1.x [单页版]开发者文档 layuiAdmin.std(iframe 版) 是完全基于 layui 架构而成的通用型后台管理模板系统,采用传统的 iframe 多页 ...

  8. Mysql5.7.20安装文档

    Mysql5.7.20安装文档 一.Linxu下数据库的恢复和备份 当我们MySQL数据库保存重要数据的时候,备份工作极为重要.本文介绍如何使用mysqldump备份和恢复数据,使用该方法,可以将数据 ...

  9. Umbraco官方技术文档 中文翻译

    Umbraco 官方技术文档中文翻译 http://blog.csdn.net/u014183619/article/details/51919973 http://www.cnblogs.com/m ...

随机推荐

  1. java中关键字static和final

    面向对象的不足 凡是有利必有弊,强对象编程,使得语法简单统一,但也有其缺点,而且有很多.我们在接下来的课程里会一点点接触到.我们今天先看第一个. 有些变量和函数确实没必要定义在一个类里.强行规定这些函 ...

  2. centos 6 下,zephir的安装和使用

    centos 6 下,zephir的安装和使用 zephir或许会开启一个新的PHP编写方式. 在这之前,如果我们要编写php的扩展,一般都是c++/clang/vc等等. 但是现在,我们有了新的选择 ...

  3. JAVA是是如何处理字符的。

    String s = "fs123fdsa";//String变量 byte b[] = s.getBytes();//String转换为byte[] String t = new ...

  4. 【NOIP2017】列队 splay

    当年太菜了啊,连$60$分的暴力都没拿满,只打了一个$30$分的. 考虑到这题最多只会询问到$30W$个点,且整个矩阵会去到$30W\times 30W$,显然不能将所有的点存下来. 对于每一行(除最 ...

  5. 【bzoj3684】 大朋友和多叉树 生成函数+多项式快速幂+拉格朗日反演

    这题一看就觉得是生成函数的题... 我们不妨去推下此题的生成函数,设生成函数为$F(x)$,则$[x^s]F(x)$即为答案. 根据题意,我们得到 $F(x)=x+\sum_{i∈D} F^i(x)$ ...

  6. 给button添加UAC的小盾牌图标

    Sample Code: public partial class Form1 : Form { public Form1() { InitializeComponent(); } private v ...

  7. OpenRefine导入CSV文件,数据清理后导出JSON格式

    第一步:选择要转换的CSV文件. 第二步:选择以逗号分割,并创建项目. 第三步:编辑,去掉特殊字符 Edit Cells > Transform... 第四步:导出文件,选择“Templatin ...

  8. Hive Cli相关操作

    landen@Master:~/UntarFile/hive-0.10.0$ bin/hive --database 'stuchoosecourse' -e 'select * from hidde ...

  9. hive与hbase的整合

    Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行运行.其优点学习成本低,可以通过类S ...

  10. js的事件学习笔记

    目录 0.参考 1.事件流 冒泡传播 事件捕获 2.事件绑定--onclick接口 onclick类的接口,只能注册一个同类事件 onclick类的接口,使用button.onclick = null ...