Windows环境安装MySQL5.7.31

下载解压

下载地址:https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.31-winx64.zip
我是下载到D盘,直接解压到当前目录

配置

修改(或者增加,不存在的话)配置文件,即目录下的my.ini文件
在这里插入图片描述

配置内容如下,其中basedir需要设置自己的安装目录

[client]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录 这块换成自己解压的路径
basedir=D:\\mysql-5.7.31-winx64
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

保存关闭,为了后续操作方便,可以设置一个环境变量。

初始化

在命令行窗口中执行以下指令,来初始化MySQL
如果没有配置环境变量,需要进入安装目录/bin目录下执行

mysqld --initialize

初始化完成之后,会自动在安装目录下生成data目录
在这里插入图片描述

安装启动

使用mysqld --install执行安装
在这里插入图片描述
使用net start mysql启动服务
在这里插入图片描述
停止指令为net stop mysql

查看临时密码

进入安装目录下/data文件内有一个*.err文件
打开后可以看到临时密码,我这里是1d/#xf3!.Nk6

2020-07-23T08:18:05.221825Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2020-07-23T08:18:07.472402Z 0 [Warning] InnoDB: New log files created, LSN=45790
2020-07-23T08:18:07.874587Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2020-07-23T08:18:08.019089Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 0a31e8ea-ccbd-11ea-bb1d-dcf401e6ae12.
2020-07-23T08:18:08.051813Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2020-07-23T08:18:11.056880Z 0 [Warning] CA certificate ca.pem is self signed.
2020-07-23T08:18:11.509636Z 1 [Note] A temporary password is generated for root@localhost: 1d/#xf3!.Nk6

登录及修改密码

登录方式和Linux一致,使用临时密码可正常登录
在这里插入图片描述
登录成功后,强制要求修改密码,可直接使用以下语句执行

# 密码自定义
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';

使用新的密码重新登录,可正常使用
在这里插入图片描述

遇到的问题

之前安装过一次,没有卸载干净,在执行mysqld -install时出现服务已存在
在这里插入图片描述
解决办法:
输入命令sc query mysql 查看名为mysql的服务
输入命令sc delete mysql,删除该mysql
再执行mysqld --install即可
在这里插入图片描述

navicat连接缓慢

在MySQL正常启动的情况下,在服务器本机连接数据库速度很快,但是在其它节点连接数据库,则非常慢,但是能连接上。
解决办法:
my.ini配置文件中[mysqld]项内增加以下参数

# 禁止域名解析
[mysqld]
...
skip-name-resolve
...

然后重启MySQL服务就行了。

navicat查询有异常

在navicat中执行命令,命令本身是可以执行的,但是执行后面还会出现如下的错误。

[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY
clause and contains nonaggregated column
‘information_schema.PROFILING.SEQ’ which is not functionally dependent
on columns in GROUP BY clause; this is incompatible with
sql_mode=only_full_group_by

首先查询sql_mode

# 查询
select version(), @@sql_mode;
# 结果
5.7.31	ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

思路是把ONLY_FULL_GROUP_BY这一项给取消掉

解决办法:
修改配置文件,编辑my.ini文件
my.ini配置文件中[mysqld]项内增加以下参数

[mysqld]
...
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
...

然后重启MySQL服务就行了。

时间不一致

当我用程序往数据库插入数据时,本地文本解析的时间明明是正确的,比如2020-07-07 00:03:00,但是数据里显示的却2020-07-06 11:03:00,前后差了13个时,网上搜了一番,说是CST时间的问题

mysql> show variables like '%TIME_ZONE%';
+------------------+--------+
| Variable_name    | Value  |
+------------------+--------+
| system_time_zone | CST    |
| time_zone        | SYSTEM |
+------------------+--------+

如果system_time_zone为空,time_zoneSYSTEM,则不用修改
如果system_time_zoneCST,则需要修改

解决办法:

# mysql命令行下执行
set global time_zone = '+08:00';
set time_zone = '+08:00';

或者修改配置文件

[mysqld]
...
default-time-zone = '+08:00'
...

上述办法貌似不绝对
还是首先查看数据库的时间是多少

select now();
select sysdate();

看看与系统时间一致不,如果不一样,可直接修改配置文件

[mysqld]
...
default-time-zone = '+08:00'
...
  • 6
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
安装MySQL 5.7.33,请按照以下步骤进行操作: 1. 首先,从MySQL官方网站下载MySQL 5.7.33的安装包。根据你的操作系统选择合适的版本(Windows、Linux等)和安装包类型(zip、tar.gz等)。 2. 解压下载的安装包到你想要安装MySQL的目录。 3. 配置MySQL环境变量(可选步骤): - 对于Windows系统,将MySQL安装目录添加到系统的环境变量PATH中。 - 对于Linux系统,在~/.bashrc或/etc/profile文件中添加以下行: ``` export PATH=$PATH:/path/to/mysql/bin ``` 4. 运行MySQL安装向导或命令行工具: - 对于Windows系统,运行安装目录下的`mysql_installer.exe`文件,并按照向导进行安装。 - 对于Linux系统,使用终端进入到MySQL安装目录,执行以下命令进行安装: ``` sudo ./bin/mysql_install_db --user=mysql --basedir=/path/to/mysql --datadir=/path/to/mysql/data ``` 5. 启动MySQL服务: - 对于Windows系统,启动MySQL服务可以在服务管理器中找到并启动。 - 对于Linux系统,执行以下命令启动MySQL服务: ``` sudo ./bin/mysqld_safe --user=mysql & ``` 6. 进行初始配置: - 对于Windows系统,可以使用MySQL安装向导进行初始配置,设置root用户密码等。 - 对于Linux系统,在终端中执行以下命令进行初始配置: ``` sudo ./bin/mysql_secure_installation ``` 7. 验证MySQL安装是否成功: - 对于Windows系统,可以通过命令行工具或者MySQL的图形界面客户端连接到MySQL服务器。 - 对于Linux系统,在终端中执行以下命令连接到MySQL服务器: ``` ./bin/mysql -u root -p ``` 这样,你就成功安装MySQL 5.7.33版本。请注意,以上步骤仅适用于简单的单机安装,如果你需要进行更复杂的配置或者使用MySQL集群,请参考官方文档或其他教程。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值