php

MySQL下载步骤详解

2023-09-07

对于不同的操作系统,MySQL提供了相应的版本。在 Windows 操作系统下,MySQL 数据库的安装包分为图形化界面安装和免安装这两种安装包。这两种安装包的安装方式不同,配置方式也不同。图形化界面安装包有完整的安装向导,安装和配置很方便。免安装的安装包直接解压即可使用,但是配置起来不方便。


本节主要介绍了 MySQL 的下载和安装过程,用户可以根据自身的操作系统类型,从 MySQL 官方下载页面免费下载相应的服务器安装包。本教程以 mysql-8.0.28-winx64 为例介绍其在 Windows 10 操作系统下的安装和配置过程。


用户下载安装包的步骤如下,包括下载 Windows 图形化 MySQL 安装包、Windows 免安装 MySQL 安装包以及 Linux 操作系统的 MySQL 安装包。


步骤 1):打开 MySQL 官方网站(http://www.mysql.com),如图 1 所示。

1、打开下载地址1.jpg



步骤 2):滑到网页底部,点击 MySQL Community(GPL) Downloads,如图 2 所示。

2、到网页底部下载mysql.jpg



步骤 3):点击 DOWNLOADS 列表下的 MySQL Community Server,如图 3 所示。

在下载页面中,选择 MySQL 的版本和操作系统,这里操作系统选择 Microsoft Windows,如下图所示。


这里的两个zip文件,Archive 是正式版的安装,而ZIP Archive, Debug Binaries & Test Suite 是测试版的安装。


有的版本还会有msi installer,zip archive和zip archive debug binaries&test suite三种选项,第一种msi是指的Windows installer开发出来的程序安装文件,它可以让你安装,修改,卸载你所安装的程序。说白了.msi就是Windows installer的数据包,把所有和安装文件相关的内容封装在一个包里。


zip一般在解压以后使用,需要配置一些东西,而msi是安装包,一步一步可以直接搞定。

3、选择版本.jpg



步骤 4):点击 Download 后进入下载页面,该页面需要注册 MySQL 账户,也可不进行注册,直接下载,如图 5 所示。

4、非登录下载.jpg

注意:一般来说应当使用二进制分发版,因为该版本比其他的分发版使用起来更简单,不再需要其他工具来启动就可以运行 MySQL。


启动mysql:


1、设置环境变量

5、设置环境变量.jpg


6、环境变量2.jpg





2、服务端初始化操作(mysqld)


PS C:softmysql-8.0.28-winx64in> mysqld --no-defaults --initialize


进行以上操作后,若是在新建的data文件夹中出现以下几个文件夹,则说明初始化完成。同时也创建了一个用户名“root”,且密码为空。

7、服务端初始化操作.jpg



4:将MYSQL卸载、重装、初始化,最后开启MYSQL服务。


以管理员身份打开cmd


1 C:Windowssystem32>mysqld --romve //删除mysql服务

2 C:Windowssystem32>mysqld --install //安装mysql服务

3 C:Windowssystem32>mysqld --initialize //一定要初始化

4 C:Windowssystem32>net start mysql

8、几个命令1.png


9、几个命令2.png



中间折腾了两天,前面都OK,就是最后,“net start mysql”,无法启动。


从上面[ERROR],可以看出,不能找到文件。但是my.ini 文件是根据网上原封不动照搬过来的,怎么就错了呢?原来问题是出在my.ini文件中的文件路径隔离符“”,应该为“/”。问题解决!!!


[mysqld]

#端口号

port=3306

#设置mysql的安装目录

basedir=C:/soft/mysql-8.0.28-winx64

#设置mysql数据库的数据的存放目录

datadir=C:/soft/mysql-8.0.28-winx64/data


#允许最大连接数

max_connections=200

# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统

max_connect_errors=10


# 服务端使用的字符集默认为8比特编码的latin1字符集

character-set-server=utf8

# 创建新表时将使用的默认存储引擎

default-storage-engine=INNODB

# 默认使用“mysql_native_password”插件认证

default_authentication_plugin=mysql_native_password

skip_ssl

default-time_zone='+8:00'

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES


#日志输出为文件

log-output=FILE


# 是否开启sql执行结果记录,必须要设置general_log_file参数,日志的路径地址

# 即日志跟踪,1为开启,0为关闭

general-log=0

general_log_file="execute_sql_result.log"


#错误信息文件设置,会将错误信息放在data/mysql.err文件下

log-error=mysql.err


#skip_grant_tables 


[mysql]

# 设置mysql客户端默认字符集

default-character-set=utf8


[client]

# 设置mysql客户端连接服务端时默认使用的端口

port=3306

default-character-set=utf8


修改root密码:


①首先打开cmd命令行,执行net stop mysql,把mysql服务先关掉;


②接着执行如下图所示的mysqld --skip-grant-tables命令;


由于mysqld –skip-grant-tables实测在mysql8.0中已失效,现使用mysqld --console --skip-grant-tables --shared-memory

10、修改root命令.png



此时就跳过了mysql的用户验证。注意输入此命令之后命令行就无法操作了,此时可以再打开一个新的命令行。请注意:在输入此命令之前先在任务管理器中结束mysqld.exe进程,确保mysql服务器端已结束运行再进行此操作。


③在新的命令行中输入:MySQL,即可在安全模式下启动启动mysql

11、启动mysql.png



输入show databases; 可以看到所有数据库说明成功登录。

12、显示数据库 show database.png



其中mysql库就是保存用户名的地方。输入 use mysql; 选择mysql数据库。

13、选择数据库use mysql.png



输入select user,host,authentication_string from user; 来查看账户信息,注:5.7之后版本下的mysql数据库下已经没有password这个字段了,password字段改成了authentication_string

14、几个命令.png



mysql> update user set password=password(“*******”) where user=“*******”; #修改密码报错 ERROR 1054 (42S22): Unknown column ‘password’ in ‘field list’


网上推荐:


mysql> update mysql.user set authentication_string=password(‘123456’) where user=‘root’; #修改密码成功


但是,实际仍无法执行。




新的修改密码方式:


1、use mysql;


2、alter user ‘root’@‘localhost’ identified with mysql_native_password by ‘********’;


3、flush privileges;


但是,直接 alter user ‘root’@‘localhost’ identified with mysql_native_password by ‘123456’;


报错。这时,借鉴https://blog.csdn.net/weixin_33842328/article/details/93565223


解决。




Query OK, 0 rows affected (0.01 sec)。查看user用户和密码,可以看到已经修改成功。


下面用root用户登录测试:


PS C:softmysql-8.0.28-winx64in> mysql -u root -p

Enter password: ******

Welcome to the MySQL monitor. Commands end with ; or g.

Your MySQL connection id is 8

Server version: 8.0.28 MySQL Community Server - GPL


Copyright © 2000, 2022, Oracle and/or its affiliates.


Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.


Type ‘help;’ or ‘h’ for help. Type ‘c’ to clear the current input statement.


mysql> quit

Bye

PS C:softmysql-8.0.28-winx64in>