专栏首页Python数据科学Windows 下安装 MySQL 的一些陷阱

Windows 下安装 MySQL 的一些陷阱

☞500g+超全学习资源免费领取

MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,2008 年被 SUN 公司收购,后 SUN 公司又被 Oracle 公司收购。

一、下载

MySQL 官网 https://www.mysql.com/

点击 DOWNLOADS 进入下载地址,会看到几个不同的版本:

  • MySQL Enterprise Edition:企业版(收费)
  • MySQL Cluster CGE:高级集群版(收费)
  • MySQL Community Edition:社区版(开源免费,但官方不提供技术支持)

通常我们用的都是社区版。点击进入社区版,看到一大堆东西,有点愣住了,不用急,其实点第一个 MySQL Community Server 的下载就可以了。

所以真正的下载地址其实是:https://dev.mysql.com/downloads/mysql/

拉到下面,选择 Windows 系统。

这里提供安装版和解压版,安装版是 32 位的(当然 64 位系统下也能安装),解压版是 64 位的。

点击 Download 后会跳转到如下页面,这是叫你注册/登录的,不理它,点击左下角的 No thanks, just start my download. 开始下载。

安装版不用多说,这里主要说一下解压版的安装过程。

二、解压版配置

1、配置环境变量

将安装包解压到你要安装的目录,将 bin 目录添加至环境变量。

添加环境变量

2、配置 my.ini

在根目录下新建一个 my.ini 文件。

my.ini

my.ini 中添加如下配置:

[mysqld]
; 设置3306端口
port=3306
; 设置mysql的安装目录
basedir=C:\\gl\\SQL\\mysql-8.0.18-winx64
; 设置mysql数据库的数据的存放目录
datadir=C:\\gl\\SQL\\mysql-data
; 允许最大连接数
max_connections=200
; 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
; 服务端使用的字符集默认为UTF8
character-set-server=utf8
; 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
; 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
[mysql]
; 设置mysql客户端默认字符集
default-character-set=utf8
[client]
; 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8

注意:basedir 和 datadir 要改成你自己的目录。

陷阱:

default_authentication_plugin=mysql_native_password 这一句必须要加上,否则可能导致 root 的初始密码无法登陆。

3、初始化数据库

以管理员身份 运行 cmd,切换至安装目录的 bin 目录下,输入如下命令:

mysqld --initialize --console

默认的服务名就是 mysql,也可以指定服务名

mysqld --initialize --console 服务名

一般是不会去指定服务名的,但是如果你的电脑上需要安装多个 MySQL 服务,就可以用不同的名字区分。

执行成功后,会显示 root 的初始密码,如下图,这个密码需要保存下来。

root 密码

如果命令中不加 --consolecmd 窗口将不显示日志信息。可以到 data 目录(my.ini 中 datadir 配置的目录)下找一个 .err 的文件,也可以查看日志信息。

陷阱 1

可能会报“找不到 MSVCP140.dll”

找不到 MSVCP140.dll

MSVCP140.dll 是 Visual Studio C++ 2015 Redistributable 的组成文件。

一般出现这个问题,是因为没有安装 Visual C++ Redistributable for Visual Studio 2015 所致。这个必须安装,否则后面服务无法启动。 下载地址:https://www.microsoft.com/zh-CN/download/details.aspx?id=48145

如果已安装,则可以修复一下。

亦可下载一个 MSVCP140.dll,复制到 C:\Windows\System32,运行如下批处理命令注册 dll

@echo 开始注册
copy msvcp140.dll %windir%\system32\
regsvr32 %windir%\system32\msvcp140.dll /s
@echo msvcp140.dll注册成功
@pause

注册成功之后再运行上述 MySQL 命令,就可以正常初始化数据库了。当然不建议这么做。


陷阱 2

执行完成之后,仔细查看输出的信息,可能会有如下警告:

'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous.

utf 8 目前是字符集 UTF8MB3 的别名,在将来的版本中将被 UTF8MB4 替换。请考虑使用 UTF8MB4,以便明确无误。

如果出现的话,我们只需将 my.ini 文件中的 utf8 替换成 UTF8MB4

3.2、安装服务

安装服务:

mysqld -install

启动服务:

net start mysql

如果上一步中你指定了另外的服务名,将 mysql 改为你指定的服务名。

登录数据库:

mysql -u root -p

这时提示需要输入密码,就是前文让你保存的密码。

登录成功后显示如下:

修改密码: 执行以下语句,即可将密码改为 root

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';

本文分享自微信公众号 - Python数据科学(PyDataScience)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-01-19

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • scikit-learn和tensorflow到底有什么本质区别?

    Scikit-learn(sklearn)的定位是通用机器学习库,而TensorFlow(tf)的定位主要是深度学习库。一个显而易见的不同:tf并未提供skle...

    用户2769421
  • 【机器学习笔记】:解读正则化,LASSO回归,岭回归

    在机器学习的学习过程中,我们会经常听到正则化这个词,在开始入门学习的时候还经常与标准化混淆。到底什么是正则化呢?本篇我们将由浅入深详细解读什么是正则化,以及LA...

    用户2769421
  • k近邻(KNN)之kd树算法原理

    本文介绍一种用于高维空间中的快速最近邻和近似最近邻查找技术——Kd-Tree(Kd树)。Kd-Tree,即K-dimensional tree,是一种高维索引树...

    用户2769421
  • mysql学习总结05 — 用户权限

    mysql中所有用户信息保存在mysql数据库下的user表中。在安装mysql时,如果不创建匿名用户,那么默认用户只有root超级用户。mysql使用host...

    CS逍遥剑仙
  • 记载一次删除mysql的默认数据库mysql的过程

    今天终于尝到了什么叫删库跑路,妈的真的悲剧,早上想在树莓派里安装个wordpress,想放点街舞视频给大家分享一下,突然发现数据库里面还有一个以前的论坛数据库,...

    bboysoul
  • mysql基础命令

    键入命令mysql -uroot -p, 回车后提示你输入密码,输入12345,然后回车即可进入到mysql中了,mysql的提示符是: mysql>

    十月梦想
  • MySQL学习笔记之安装

    最近在学习MySQL和Django Web开发,这个月首先会更新MySQL的学习笔记,也都是比较简单的东西,用作复习和巩固。Web开发会更新一些小项目给大家(预...

    罗罗攀
  • # 示例环境

    ​ 想必很多新手都避免不了有这些疑问,都想一次性投入精力解决以上问题,下面我用我理解的方式帮助你解决这些疑问。

    用户1175783
  • Centos7下【掌握】安装mysql5.7

    1,下载,下载那个都可以 https://dev.mysql.com/downloads/mysql/5.7.html#downloads

    Little JAVA
  • Liunx centos7-下安装Mysql笔记

    Little JAVA

扫码关注云+社区

领取腾讯云代金券