★Windows:MySQL免安装版(配置+服务+安装两个版本)

本文详细介绍了如何在Windows上安装和配置MySQL 8.0免安装版,包括修改my.ini文件以配置不同端口、初始化数据库、设置密码以及解决启动时可能出现的错误。此外,还提到了如何处理Navicat连接权限不足的问题以及在同一台电脑上安装多个MySQL实例的方法。遇到如' mysqld'不是内部命令、数据目录错误、权限问题等错误时,提供了相应的解决方案。

多个服务请参考:Windows MySQL8.0免安装版(实操配置以及多个mysql实例时的踩坑经验)_周全全的博客-优快云博客_mysql8.0免安装版 

:以下经常提到的data目录为,安装MySQL时自动生成,不能手动创建,否则报错(重复报错也会报错)

免安装配置参考资料(修改密码等):MySQL5.6免安装版环境配置和登陆 - 鸿蒙程序员 - 博客园

一、下载MySQL

5.7版本:MySQL :: Begin Your Download

8.0版本:MySQL :: Download MySQL Community Server

二、配置my.ini【环境变量】

1、(最外层目录下、其他版本为my.cnf)文件(主要路径问题,如果路径不正确,无法新建data文件)

2、两个端口需要替换,并且是一样

[mysql]  
# 设置mysql客户端默认字符集  
default-character-set=utf8  #utf8mb4
[mysqld]  
#设置3306端口  
port = 13307  
# 设置mysql的安装目录  
basedir=E:\mysql-5.7.27-winx64
# 设置mysql数据库的数据的存放目录  
datadir=E:\mysql-5.7.27-winx64\data  
# 允许最大连接数  
max_connections=2000  
# 服务端使用的字符集默认为8比特编码的latin1字符集  
character-set-server=utf8  
# 创建新表时将使用的默认存储引擎  
default-storage-engine=INNODB
[client]
port=13308

[mysql]
default-character-set=utf8 #utf8mb4

[mysqld]
port=13308
skip-grant-tables
basedir=D:\Programming\mysql-5.7.26-winx64
datadir=D:\Programming\mysql-5.7.26-winx64\data
character-set-server=utf8
default-storage-engine=INNODB
max_connections=500
query_cache_size=50M
tmp_table_size=500M
thread_cache_size=8


max_allowed_packet=50000M

key_buffer_size=30M
read_buffer_size=100M
read_rnd_buffer_size=100M
sort_buffer_size=4096K

innodb_file_per_table=1


innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=4M
innodb_buffer_pool_size=50M
innodb_thread_concurrency=8

innodb_flush_log_at_trx_commit=2
wait_timeout=2147483 
interactive_timeout =2147483 

default-time-zone=timezone
default-time-zone='+8:00'


三、执行命令

3.1、打开dos窗口,以管理员方式进入到bin目录

3.2、安装命令:mysqld --install xxx  (卸载命令:mysqld --remove xxxsc delete MySQL xxx

3.3、初始化MySQL:mysqld --initialize-insecure 或者 mysqld --initialize --console 会生成data文件(注意此处保存密码,如果没打印出来密码就是空)

3.4、启动服务:net start xxx  (停止:net stop xxx  )(刷新权限:flush privileges;

3.5、进入mysql命令(创建data时已生成密码): mysql-5.7.27-winx64\bin>  mysql -u root -p

3.6、修改密码:

MySQL 8.0 及之后的版本:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';

MySQL 5.7 及之后的版本:update mysql.user set authentication_string=password('*******') where user='*******';

      或者   update mysql.user set password=PASSWORD('******') where User='******';

      或者   alter user user() identified by '******';

刷新权限:flush privileges;

退出mysql:quit; 

重启服务中的MySQL

四、一定要确认已经启动才可以

五、使用Navicat Premium11连接数据库异常

报错:is not allowed to connect to this mysql server

原因:权限不够,只允许本机访问

参考:连接MySQL报错,is not allowed to connect to this MySQL server-优快云博客

六、授权,允许远程连接(改表法)

参考:MySQL:报错:1130-host ... is not allowed to connect to this MySql server_1130-host is not allowed to-优快云博客

远程连接不上,遇到这个问题首先到mysql所在的服务器上用连接进行处理

  1、连接服务器: mysql -u root -p

  2、看当前所有数据库:show databases;

  3、进入mysql数据库:use mysql;

  4、查看mysql数据库中所有的表:show tables;

  5、查看user表中的数据:select Host, User,authentication_string from user;

  6、修改user表中的Host:  update user set Host='%' where User='root';

  7、最后刷新一下:flush privileges;

       #一定要记得在写sql的时候要在语句完成后加上" ; "

 

use mysql;
update user set Host='%' where User='root';
flush privileges;

提高安全性可以在bind-address中添加域名(只允许本机和指定域名访问)

六、一台电脑(windows)安装两个版本MYSQL方法

 一台电脑(windows)安装两个版本MYSQL方法_windows安装两个mysql_啥都不会-G的博客-优快云博客

========================================以下报错解决方法=======================================

1、'mysqld' 不是内部或外部命令,也不是可运行的程序

原因:没有配置环境变量

环境变量中的用户变量选择“Path”,单击编辑,将MySQL中bin的安装路径,粘贴到此处,即可。

系统变量(S)”里,配置“MYSQL_HOME”变量
这里写图片描述

2、 (0xc000007b) 代码错误

下载DirectX修复工具 DirectX修复工具增强版-DirectX修复工具下载 v4.0.0.0增强版--pc6下载站

3、缺少msvcr120.dll文件

下载文件msvcr120.dll下载-msvcr120.dll正式版下载[电脑版]-华军软件园

4、输入mysqld --initialize-insecure 命令报以下错误

1)

D:\mysql-5.7.27-13307\bin>mysqld  --initialize-insecure
mysqld: Can't create directory 'D:\mysql-5.7.27-winx64\data\' (Errcode: 2 - No s
uch file or directory)
2019-09-02T07:07:03.185182Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is
deprecated. Please use --explicit_defaults_for_timestamp server option (see doc
umentation for more details).
2019-09-02T07:07:03.220339Z 0 [ERROR] Can't find error-message file 'D:\mysql-5.
7.27-winx64\share\errmsg.sys'. Check error-message file location and 'lc-message
s-dir' configuration directive.
2019-09-02T07:07:03.292608Z 0 [ERROR] Aborting

原因my.ini文件的路径不匹配,无法创建data文件夹(查看第2点)

2)

2019-09-02T07:23:08.176337Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is
deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2019-09-02T07:23:08.276927Z 0 [ERROR] --initialize specified but the data directory has files in it. Aborting.
2019-09-02T07:23:08.277904Z 0 [ERROR] Aborting

原因:在my.ini文件中添加  explicit_defaults_for_timestamp=true 放在mysqld下

3)

2019-09-02T07:33:58.913239Z 0 [ERROR] --initialize specified but the data directory has files in it. Aborting.
2019-09-02T07:33:58.918122Z 0 [ERROR] Aborting

原因:
已经初始化,但没有成功,想再次初始化报错。
解决:
数据文件目录有其他的文件,这个data目录应该是一个空目录;
查看data目录是哪个,把data文件删除。

5、ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)

参考 MySQL 5.7root用户密码修改_努力奋斗GO的博客-优快云博客_mysql5.7修改root密码

6、Install/Remove of the Service Denied!

原因:没有权限

解决办法:打开cmd.exe程序的时候选择“用管理员身份打开”。

7、ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statemen

mysql 配置文件目录:/etc/my.cnf

root 密码为空的时候配置文件中下面这句:skip-grant-tables

8、相关命令

variables like "secure_file_priv";    //查看secure_file_priv是否为null
flush privilegesshow   //刷新权限、主机等

9、windows安装mysql 遇到错误193的解决办法

windows安装mysql 遇到错误193的解决办法_城市里的元的博客-优快云博客_错误码193

10、Client does not support authtication protocol..consider upgrading mysql client

mysql8.0连接时出现Client does not support authtication protocol..consider upgrading mysql client-04007技术笔记

如果以上方法都试过了,还是无法启动MySQL,可以尝试重启cmd窗口

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值