Windows下使用压缩包安装MySQL
0、前言
MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,2008 年被 SUN 公司收购,后 SUN 公司又被 Oracle 公司收购。
1、下载
MySQL官网 www.mysql.com
点击download
之后,会看到几个不同版本的mysql:
- MySQL Enterprise Edition:企业版(收费)
- MySQL Cluster CGE:高级集群版(收费)
- MySQL Community Edition:社区版(开源免费,但官方不提供技术支持)
通常我们使用的都是社区版,所以点击MySQL Community Server
进入下载就行。MySQL社区版的下载链接 https://dev.mysql.com/downloads/mysql/
mysql下载中提供了安装版本(Installer)和压缩包版本(zip),二者都支持64位和32位计算机,还有一种集成了debug和测试环境的版本。
点击Download
后会跳转到这个页面,提示你注册或登录,不用理它,直接点击No thanks, just start my download
就能开始下载。
2、压缩包安装
这里只讲压缩包版本MySQL安装方法
2.1 环境变量配置
将安装包解压并放到你要安装的目录,然后将bin
目录添加至环境变量。
2.2 配置my.ini文件
在mysql主文件夹下添加my.ini
配置文件
在my.ini
文件中添加如下配置信息:
[mysqld]
; 设置3306端口
port=3306
; 设置mysql的安装目录
basedir=D:/software/MySQL
; 设置mysql数据库的数据的存放目录
datadir=D:/software/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
分别修改为自己的相应文件夹目录
2.3 初始化数据库
以管理员身份运行cmd,并切换目录至mysql主目录的bin文件夹下,输入如下命令:
mysqld --initialize --console
这个命令会初始化mysql数据库,并在主目录下创建data
文件夹,用于保存数据库表文件。初始化之后会给你一个随机的MySQL数据库密码,切记要复制下来这个临时密码。
如果命令中没有加--console
,在cmd
窗口就不会显示日志信息,可以在data
文件夹找一个后缀为.err
的文件,也能查看日志信息。
2.4 注册mysql服务
使用下边的命令可以注册mysql服务,需要安装多个版本mysql时可以使用这个命令来区分不同版本数据库对应的服务。
mysqld --install 服务名称
安装之后可以使用下边的命令启动mysql服务:
net start mysql57
其中的mysql57
替换成自己创建的服务名称。
2.5 进入mysql数据库
登录mysql数据库:
mysql -uroot -p
这里需要输入密码,密码是之前初始化数据库时保存的密码。
登陆成功之后显示如下信息:
修改密码执行下面的语句:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
其中的 ‘root’ 就是设置的密码。
3、登录遇到问题
登录时可能会遇到下面的问题:提示说 Access denied for user 'root'@'localhost' (using password: YES)
。一般这个问题是由于密码错误引起的,解决办法就是修改密码。
1、修改密码的第一步是跳过mysql的密码认证机制,在MySQL的配置文件my.ini
中的[mysqld]
下面任意一行添加skip-grant-tables
来跳过密码验证,如下图所示:
2、重启mysql服务,分别使用下面的命令停止然后再开启mysql服务
net stop mysql57
net start mysql57
3、免密登录mysql,敲入mysql -uroot -p
之后按回车,需要输入密码时,直接按回车键,就可以不使用密码登录到mysql数据库中。
4、更新权限
flush privileges
5、修改新密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
6、收尾。删除my.ini
文件中添加的免密登录配置skip-grant-tables
,然后重启mysql服务,就可以正常登录mysql了。
参考:
https://blog.csdn.net/qq_43674360/article/details/124758352