分享Windows环境下MYSQL安装过程中出现的一些问题及总结

本文涉及的产品
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS AI 助手,专业版
简介: 分享MYSQL安装过程中出现的一些问题及总结

一、MYSQL8静默安装方法
(1)新建my.ini配置文件
[client]
default-character-set=utf8mb4
[mysqld]

设置3306端口

port = 3306

设置mysql的安装目录

basedir= E:\mysql-8.0.22-winx64

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

datadir= E:\mysql-8.0.22-winx64\data

允许最大连接数

max_connections=20

服务端使用的字符集默认为utf8mb4

character-set-server=utf8mb4

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

default-storage-engine=INNODB

(2)执行命令:
mysqld --initialize --console
(记下密码)
mysqld install
net start mysql
mysql -u root -p

解决Windows下MySQL8.0安装后无法启动问题:
1、删除注册表中相关mysql目录
<1>开始--》运行中输入regedit进入注册表
<2>删除HKEY_LOCAL_MACHINE/SYSTEM/ControlSet001/Services/Eventlog/Applications下的MySQL目录
<3>删除HKEY_LOCAL_MACHINE/SYSTEM/ControlSet002/Services/Eventlog/Applications下的MySQL目录
<4>删除HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Eventlog/Applications下的MySQL目录
<5>可以编辑--》查找搜索一下mysql相关配置数据
2、删除自己创建的my.ini文件,创建 my.ini 文件安装一直失败;最后没有创建 my.ini 文件安装成功。
3、删除已创建的服务名称,执行命令:mysqld --remove mysql
4、管理员命令运行CMD命令行,进入mysql安装包的bin目录
5、执行命令 mysqld --initialize --console(自动生成data 文件夹,且生成临时密码,记住临时密码)
6、执行命令 mysqld --install (提示 安装成功)
7、执行命令 net start mysql
8、mysql 服务启动后,执行命令 mysql -u root -p 登录mysql ,输入步骤 4 生成的临时密码,即可登录成功

二、MYSQL8之前版本的静默安装方法(如MYSQL-5.7.20)
前提:配置环境变量,如:MYSQL_HOME=D:\mysql-5.7.20-winx64
(1) 创建my.ini文件(D:\mysql-5.7.20-winx64\bin)
[client]
default-character-set=utf8
[mysqld]

解压目录

basedir = %MYSQL_HOME%

解压目录

datadir = %MYSQL_HOME%\data
port = 3306
default-character-set=utf8
skip-name-resolve
skip-grant-tables
(2)以管理员身份执行命令
mysqld --initialize-insecure
mysqld -install
(3)启动mysql服务,建立连接
(4)修改字符集
mysql> show variables like 'character_set%';
(5)更改用户密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';
(6)MySql 只能通过localhost 和 127.0.0.1访问 不能通过其他IP访问
mysql> grant all privileges on . to root@'%' identified by 'root';
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

重新启动mysql
启动:net stop mysql
停止:net start mysql

三、安装过程中遇到的问题及解决办法

  1. 错误代码10055

错误原因:Win32 error code 10055: 由于系统缓冲区空间不足或列队已满,不能执行套接字上的操作。
D:\Software\mysql-5.7.20-winx64\bin>mysql -uroot -p
Enter password:
ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10055)
解决办法:修改或添加注册表
路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters
新建DWORD值,如:
数值名称:MaxUserPort
数值类型:DWORD
数值:65534(选:十进制)

  1. 错误代码10061

D:\Software\mysql-5.7.20-winx64\bin>mysql -uroot -h127.0.0.1 -p
Enter password:
ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (10061)
解决办法:
第一,删除安装时的配置文件my.ini,如:D:\Software\mysql-5.7.20-winx64\bin\my.ini;
第二,执行安装服务命令,如:D:\Software\mysql-5.7.20-winx64\bin>mysqld -nt -install;
第三,启动MYSQL,如:D:\Software\mysql-5.7.20-winx64\bin>net start MySQL
MySQL 服务正在启动 .
MySQL 服务已经启动成功。

  1. TIMESTAMP with implicit DEFAULT value is deprecated

解决办法:
第一,在my.ini 新增explicit_defaults_for_timestamp=true配置;
第二,重装时要删除之前已有的data文件夹;

  1. Cause: java.sql.SQLSyntaxErrorException: which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

解决办法:
mysql> use test;
mysql> show variables like '%sql_mode';
mysql> set sql_mode=(select replace(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
mysql> select @@global.sql_mode;
mysql> set @@global.sql_mode=(select replace(@@sql_mode,'ONLY_FULL_GROUP_BY',''));

  1. windows环境,本地计算机上的MySQL服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止。

解决办法:修改my.ini文件,编辑器文件编码默认改成了utf-8,将文件编码改成ANCII就可以启动。

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
5月前
|
安全 Ubuntu iOS开发
Nessus Professional 10.10 Auto Installer for Windows - Nessus 自动化安装程序
Nessus Professional 10.10 Auto Installer for Windows - Nessus 自动化安装程序
242 3
Nessus Professional 10.10 Auto Installer for Windows - Nessus 自动化安装程序
|
5月前
|
Ubuntu 关系型数据库 MySQL
MySQL源码编译安装
本文详细介绍了MySQL 8.0及8.4版本的源码编译安装全过程,涵盖用户创建、依赖安装、cmake配置、编译优化等步骤,并提供支持多Linux发行版的一键安装脚本,适用于定制化数据库部署需求。
1265 4
MySQL源码编译安装
|
5月前
|
Ubuntu 关系型数据库 MySQL
MySQL二进制包安装
本文详细介绍了在多种Linux系统上通过二进制包安装MySQL 8.0和8.4版本的完整过程,涵盖用户创建、glibc版本匹配、程序解压、环境变量配置、初始化数据库及服务启动等步骤,并提供支持多发行版的一键安装脚本,助力高效部署MySQL环境。
678 4
MySQL二进制包安装
|
5月前
|
安全 关系型数据库 MySQL
MySQL包安装 -- SUSE系列(离线RPM包安装MySQL)
本文详细介绍在openSUSE系统上通过离线RPM包安装MySQL 8.0和8.4版本的完整步骤,包括下载地址、RPM包解压、GPG密钥导入、使用rpm或zypper命令安装及服务启动验证,涵盖初始密码获取与安全修改方法,适用于无网络环境下的MySQL部署。
596 3
MySQL包安装 -- SUSE系列(离线RPM包安装MySQL)
|
5月前
|
关系型数据库 MySQL Linux
MySQL包安装 -- SUSE系列(SUSE资源库安装MySQL)
本文介绍了在openSUSE系统上通过SUSE资源库安装MySQL 8.0和8.4版本的完整步骤,包括配置国内镜像源、安装MySQL服务、启动并验证运行状态,以及修改初始密码等操作,适用于希望在SUSE系列系统中快速部署MySQL的用户。
531 3
MySQL包安装 -- SUSE系列(SUSE资源库安装MySQL)
|
5月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
671 8
|
5月前
|
Ubuntu 关系型数据库 MySQL
MySQL包安装 -- Debian系列(离线DEB包安装MySQL)
本文详细介绍了在Ubuntu 24.04、22.04、20.04及Debian 12系统上,通过离线DEB包安装MySQL 8.0和8.4版本的完整步骤。涵盖下载地址、依赖处理、dpkg安装顺序、配置方法及服务启动验证,确保用户可顺利部署MySQL数据库。
1990 0
MySQL包安装 -- Debian系列(离线DEB包安装MySQL)
|
5月前
|
运维 Ubuntu 关系型数据库
MySQL包安装 -- Debian系列(Apt资源库安装MySQL)
本文介绍了在Debian系列系统(如Ubuntu、Debian 11/12)中通过APT仓库安装MySQL 8.0和8.4版本的完整步骤,涵盖添加官方源、配置国内镜像、安装服务及初始化设置,并验证运行状态,适用于各类Linux运维场景。
1619 0
MySQL包安装 -- Debian系列(Apt资源库安装MySQL)
|
6月前
|
缓存 关系型数据库 BI
使用MYSQL Report分析数据库性能(下)
使用MYSQL Report分析数据库性能
455 158
|
6月前
|
关系型数据库 MySQL 数据库
自建数据库如何迁移至RDS MySQL实例
数据库迁移是一项复杂且耗时的工程,需考虑数据安全、完整性及业务中断影响。使用阿里云数据传输服务DTS,可快速、平滑完成迁移任务,将应用停机时间降至分钟级。您还可通过全量备份自建数据库并恢复至RDS MySQL实例,实现间接迁移上云。

推荐镜像

更多