搞开发多年,其实MySql前前后后安装配置了无数次,但是每次都需要到网上搜教程,折腾半天才搞定,这次索性把整个过程全部记录下来,以便以后查阅。

下载

MySql官网,导航找到DOWNLOADS>>Community>>MySQL Community Server页面,也可以直接点击此处,选择相应的Mysql版本的zip包,我这里是mysql-5.7.21-winx64.zip

安装配置

  1. 下载好压缩包之后直接解压到将要存放的目录;
  2. 在根目录新建my.ini文件(并没有所谓的my-default.ini文件),保存为ANSI编码格式,如下图:
  3. my.ini中拷入以下代码:
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:\\Program Files\\mysql-5.7.21
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
  1. D:\Program Files\mysql-5.7.21\bin目录下,按住Shift+右键,选择在此处打开命令窗口

  2. 执行命令mysqld --install,这时有可能会出现以下几种错误:

    • Install/Remove of the Service Denied

      出现该问题是因为执行命令的权限不够,到C:\Windows\System32目录下找到cmd.exe文件,重新以管理员身份运行打开cmd窗口,然后转到D:\Program Files\mysql-5.7.21\bin目录,再次执行mysqld --install命令。
    • 丢失MSVCR120.dll,MSVCP120.dll

    这个问题提示比较明显,缺少文件,缺啥补啥,网上方案很多,最简单的办法就是根据缺失的文件安装相应版本的VC++运行库的安装包,因为MSVCR和MSVCP都属于VC++运行库,具体如下:

    msvcp、msvcr、vcomp140.dll属于VC++2015版 msvcp、msvcr、vcomp120.dll属于VC++2013版 msvcp、msvcr、vcomp110.dll属于VC++2012版 msvcp、msvcr、vcomp100.dll属于VC++2010版 msvcp、msvcr、vcomp90.dll属于VC++2008版 msvcp、msvcr60、71和80.dll,以及vcomp.dll(不带数字版本号)属于VC++2005版

    • Found option without preceding group in config file

      出现该错误一般是my.ini文件头部缺少了[mysql],或者另一种情况是文件的编码格式不对,将文件编码保存为ANSI即可。
  3. 执行命令mysqld --initialize,此时安装根目录下会自动生成data文件夹(原目录没有该文件夹)。

  4. 执行命令net start mysql,启动服务,如下图,证明已经安装成功。

配置账号密码

但当我们输入mysql命令时,会出现以下错误。

实际上我们并没有设置任何密码,解决办法如下:

  1. 打开MySQL目录下的my.ini文件,在文件的最后添加一行skip-grant-tables,保存并关闭文件。
  2. 重启MySQL服务。
  3. 在命令行中输入mysql -uroot -p(不输入密码),回车即可进入数据库。
  4. 执行SQL语句use mysql;使用mysql数据库。
  5. 执行SQL语句update user set authentication_string=password('123456') where user='root';
  6. 打开MySQL目录下的my.ini文件,删除最后一行的skip-grant-tables,保存并关闭文件。
  7. 重启MySQL服务。

注:

此时如果执行如use mysql等命令,可能会出现 You must reset your password using ALTER USER statement before executing this statement. 的错误,如果出现,则执行以下步骤即可:

执行命令SET PASSWORD = PASSWORD('123456');

执行命令ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;

开启远程连接

  1. 执行命令MySQL -uroot -p123456
  2. 执行命令use mysql;
  3. 执行命令update user set host = '%' where user = 'root';
  4. 执行命令GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;给予任何主机访问数据的权限。

Mysql-5.7.21安装配置的更多相关文章

  1. mysql 5.0.46安装配置

    http://os.chinaunix.net/a2008/0801/986/000000986346.shtml RPM包和源码包存放位置 /usr/local/src 源码包编译安装位置(pref ...

  2. WAMP(Windows、Apache、MySQL、php)安装配置过程常见问题

    WAMP(Windows.Apache.MySQL.php)安装配置过程 可以参考该网友的总结(总结的不错,鼓掌!!): http://www.cnblogs.com/pharen/archive/2 ...

  3. mysql 5.7.13 安装配置方法图文教程(win10) (转)

    http://www.jb51.net/article/87152.htm ***************************** MySQL是一款关系型数据库管理系统,是由Oracle旗下公司M ...

  4. mysql 5.7.15 安装配置方法图文教程(转)

    http://www.jb51.net/article/92521.htm ******************************* MySQL数据库作为关系型数据库中的佼佼者,因其体积小,速度 ...

  5. mysql 5.7.14 安装配置方法图文教程(转)

    http://www.jb51.net/article/90259.htm ******************************** 因笔者个人需要需要在本机安装Mysql,先将安装过程记录如 ...

  6. mysql 5.7.13 安装配置方法(linux)-后期部分运维

    mysql 5.7.13 安装配置方法图文教程(linux) 学习了:https://www.cnblogs.com/zhao1949/p/5947938.html /usr/local/mysql是 ...

  7. MySQL基础环境_安装配置教程(Windows7 64或Centos7.2 64、MySQL5.7)

    MySQL基础环境_安装配置教程(Windows7 64或Centos7.2 64.MySQL5.7) 安装包版本 1)     VMawre-workstation版本包 地址: https://m ...

  8. Mac 下 Nginx、MySQL、PHP-FPM 的安装配置

    用了3年多的本本罢工,最近新入手了一台 rmbp,一堆工作环境要配置,LNMP 里的 NMP 是常规要安装的,恰好也是第一次在 mac 上安装配置 nginx.mysql.php,所以顺便做个记录,免 ...

  9. MySQL解压版安装配置详解

    MySQL解压版安装起来比较简单,步骤相对较少.下面我们就来详细介绍一下如何在windows操作系统上安装解压班的MySQL. 1.下载解压版MySQL,地址:http://downloads.mys ...

随机推荐

  1. JavaScript实现强制重定向至HTTPS页面

    <script type="text/javascript"> var targetProtocol = "https:"; if (window. ...

  2. ffplay常用命令

    一.ffplay 常用参数 ffplay不仅仅是播放器,同时也是测试ffmpeg的codec引擎,format引擎,以及filter引擎的工具,并且也可以做可视化的媒体参数分析,可以通过ffplay ...

  3. NancyFX 第四章 Nancy快速上手 (使用Nancy模板)

    在我们进一步深入学习Nancy之前,我们先快速的了解下Visual Studio下的Nancy模板. 采用Nancy模板,创建一个Nancy项目就像我们创建MVC应用或winForm应用一样简单,只需 ...

  4. 9.C++-对象的构造函数(详解)

    大家都定义struct或class时,不能给成员直接赋值,那么对象中成员变量的初始值是多少? 对于局部对象变量而言,其成员是个随机值,因为该变量是被分配在栈上,对于其它局部变量也是这样. 对于全局对象 ...

  5. python 批量删除mysql前缀相同的表

    1,一般游戏log数据库会存储大量的玩家行为日志,一种行为一张表,每天生成一张新表,一天会有30+张不同行为的表,通常会保留玩家日志1年左右,对于超过1年的日志需要删除 2,log数据库一年会保存1W ...

  6. 前端的UI设计与交互之布局篇

    布局是页面构成的前提,是后续展开交互和视觉设计的基础.设计者在选择布局之前,需要注意以下几点原则:明确用户在此场景中完成的主要任务和需获取的决策信息.明确决策信息和操作的优先级及内容特点,选择合理布局 ...

  7. Matplotlib库的使用

    *可通过dpi修改输出质量 plot函数 第一种方法会使图中所有的字体改变,而第二种方法只会改变中文字体,推荐使用第二种方法.

  8. Session 的原理及最佳实践

    Http协议是基于请求和响应的一种无状态的协议,而通过session可以使得Http应用变得有状态,即可以"记住"客户端的信息.今天就来说说这个session和cookie. Se ...

  9. #Python3.6.2(32位) pip安装 和 pygame 环境配置

    #首先确认电脑已经安装python ,可通过在命令行下 执行 python --version确认. 1. 到 https://pypi.python.org/pypi/setuptools/ 下载 ...

  10. Lucene详解

    一.lucene原理 Lucene 是apache软件基金会一个开放源代码的全文检索引擎工具包,是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎.它不是一个完整的搜索应用程序 ...