前言
先指出MySQL官方网址,包含MySQL详细说明。https://dev.mysql.com/doc/refman/8.0/en/server-options.html
官网有详细的安装教程,该文档也可以下载,以便自己研究
该文档的第二章就是在各个系统安装MySQL的说明,由于官方文档较难理解,笔者在另外两本书找到了MySQL的安装教程。
《python从小白到大牛》(清华大学出版社 关东升编著)和《python从小白到大牛(第二版)》
这篇笔记安装部分
主要就是参考这两本书来的,两本书各介绍一种安装方式。
这篇笔记的卸载
和问题
主要来自黑马程序员的MySQL课程文档
从未安装MySQL的直接看第二部分或者第三部分
一 卸载MySQL
- 停止MySQL服务
win+R 打开运行,输入 services.msc
点击 “确定” 调出系统服务。
鼠标右键,点击停止
- 卸载MySQL相关组件
若原先使用应用程序安装(方式二),是用这一步的,
若原先使用压缩包安装MySQL(方式一),没有卸载这一步。
打开控制面板 —> 卸载程序 —> 卸载MySQL相关所有组件
3. 删除MySQL安装目录
或许是C:\Program Files\MySQL
4. 删除MySQL数据目录
若数据存放目录是在 C:\ProgramData\MySQL,直接将该文件夹删除。
- 再次打开服务,查看是否有MySQL卸载残留
如果已将MySQL卸载,但是通过任务管理器—>服务,查看到MySQL服务仍然残留在系统服务里。
解决办法:
以管理员方式运行cmd命令行,输入以下命令:
sc delete 服务名称(如MySQL80,mysql)
这样可以实现删除服务。
我当初给MySQL命名是mysql,所以这里的指令是
sc delete mysql
,
MySQL命名就是输入services.msc
点击 “确定” 调出系统服务,出现的mysql服务名
若你当初是命名
mysql80
,指令就是sc delete mysql80
- 删除系统环境变量
删除MYSQL_HOME
的mysql路径
双击Path
,删除环境变量
二 使用压缩包装MySQL(方式一)
这一部分主要来源于下图
1.下载社区版本(MySQL Community Server)是免费的,我们下载社区版本(我这里下载的8.0.38)
社区版下载链接:https://downloads.mysql.com/archives/community/
笔者这里下载的安装包,是.zip后缀的文件
点
Archives
下载其他历史版本
不需要注册账号,点“No thanks,just start my download”
下载完成后解压到某一个文件夹,记住这个路径
2.创建初始化文件my.ini文件后配置
在根目录下创建一个txt文件,名字叫my,文件后缀为ini,即my.ini
之后复制下面这个代码放在文件下
以下代码除安装目录
和数据存放目录
需修改,其余不用修改。
basedir = D:/envs/mysql/mysql
datadir = D:/envs/mysql/mysql/data
将安装目录数据存放目录修改成你的文件路径
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/8.0/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.
[client]
default-character-set = utf8mb4
[mysql]
default-character-set = utf8mb4
[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_bin
init_connect='SET NAMES utf8mb4'
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
innodb_buffer_pool_size = 128M
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
# These are commonly set, remove the # and set as required.
# 将安装目录数据存放目录修改成你的文件路径
# !!!!!!!!!!!!! 修改一下两行内容 !!!!!!!!!!!!!!!!
basedir = D:/envs/mysql/mysql
datadir = D:/envs/mysql/mysql/data
port = 3306
# server_id = .....
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
join_buffer_size = 128M
sort_buffer_size = 16M
read_rnd_buffer_size = 16M
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES#设置不区分大小写,windows环境默认不区分大小写,Linux下mysql安装完后是默认:区分表名的大小写,不区分列名的大小写;lower_case_table_names = 1
3.初始化MySQL
使用管理员身份运行CMD,进入mysql的bin目录(这里是你的MySQL文件目录)
cd D:\envs\mysql\mysql\bin\
D:
在MySQL目录下的bin目录下执行命令初始化数据库:
mysqld --initialize --console
初始化成功后,root用户会生成一个临时密码,请记住这个密码。我这个随机密码是/vxaVb%Ts8ao
(注意localhost:
有个一空格,不用复制)
4 安装mysql服务
安装MySQL服务就是把MySQL数据库启动配置成为windows系统的一个服务,这样当windows启动后,MySQL会字典启动,安装MySQL服务指令如下:
mysqld --install
5 启动服务
启用服务指令如下:
net start mysql
MySQL数据库服务启动成功说明数据库安装和配置成功。查看MySQL数据库服务可以打开windows服务,如下图
6 修改root临时密码
首先登录MySQL数据库服务器,输入mysql -u root -p
,按下Enter键,在提示输入密码后,输入刚刚的临时密码
登录成功后,在MySQL提示符中输入指令。其中root
是修改后的新密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '1234';
其他样例密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';
- 配置环境变量
进入环境变量
此电脑
->属性
->高级系统设置
->右下角环境变量
在系统变量
中新建MYSQL_HOME
为变量名
,
变量值
为MySQL安装目录
在系统变量
中找到并双击Path
新建并输入%MYSQL_HOME%\bin
连续点击确定
三 使用安装包装MySQL (方式二)
下载社区版本(MySQL Community Server)是免费的,我们下载社区版本(我这里下载的8.0.38)
社区版下载链接:https://downloads.mysql.com/archives/installer/
笔者这里下载的安装包,是.msi后缀的文件
点
Archives
下载其他历史版本
开始安装
Custom自主安装,Server Only 不能自己更改文件路径,数据路径。Full 会安装许多不需要的文件
没有Advanced Option
的,点击一下右侧“Products To Be Installed”中的MySQL Server 8.0.38 -X64
就会出现Advanced Option
放C放D后可以
点“Excuse”安装好后点“Next”
输入MySQL中root用户的密码,一定记得记住该密码
命名MySQLservice名称
给予MySQL文件权限
点击Execute
验证一下是否安装成功
方式一(navicat验证)
此方式安装MySQL的文件路径
C:\Program Files\MySQL\MySQL Server 8.0
此方式安装MySQL的数据路径C:\ProgramData\MySQL\MySQL Server 8.0\Data
方式二,终端中验证,顺便添加环境变量
进入环境变量
此电脑
->属性
->高级系统设置
->右下角环境变量
在系统变量
中新建MYSQL_HOME
为变量名
,
变量值
为MySQL安装目录
在系统变量
中找到并双击Path
新建并输入%MYSQL_HOME%\bin
连续点击确定
配置好环境变量后就可以在终端使用了
mysql -u root -p密码
例如:mysql -u root -proot
,mysql -u root -p1234
,mysql -u root -p6666
四 常见问题
(1) 'mysql’不是内部或外部命令,也不是可运行的程序
原因:环境变量路径配置错误,系统环境变量出错,检查MySQL路径是否出错,比如:C:\Program Files\MySQL\MySQL Server 8.0
路径出错
(2)由于找不到MSVCR120.dll,无法继续执行代码
管理员权限打开命令符输入mysqld --install后显示“由于找不到MSVCR120.dll,无法继续执行代码。
原因:缺少C++的一个组件,而电脑之前没下载像vs2019
,vs2022
,微软SQL Server
这样的编译器。使用
压缩包装MySQL(方式一)
会出现这个问题。
使用安装包包装MySQL(方式二)
会出现一个界面提醒你下载。
下图是《python从小白到大牛(清华大学出版社的一张关于此问题的截图)》
解决方案(1):
大多数情况下下载2013的C++组件就行了,就是下面第一个网址
添加C++组件(2013):https://www.microsoft.com/zh-cn/download/details.aspx?id=40784
添加C++组件(2015):https://www.microsoft.com/zh-CN/download/details.aspx?id=48145
解决方案(2):
使用安装包包装MySQL(方式二)
会自动跳出一个界面让你下载C++组件
解决方案(3) :
下载一次vs2022
,得十几分钟,这个肯定能解决。
(3)初始密码忘了
删了压缩包重新下载