Windows MySQL服务安装及问题解决方案

news2025/4/17 8:29:37

Windows MySQL服务安装及问题解决方案

    • 安装及配置
      • 步骤一:官网下网MySQL安装包
      • 步骤二:设置环境变量
      • 步骤仨:配置MySQL,ini配置文件
      • 步骤四:初始化MySQL
      • 步骤五:开启MySQL服务
      • 步骤六:测试是否安装成功
      • 步骤七:修改密码
    • 问题解决方案
      • 修改密码
        • fun1:
        • fun2:
        • fun3
      • 8.0版本之后加密规则不同,navicat无法链接到MySQL数据库
      • 如何让局域网内的其他电脑访问本机的mysql
      • MySQL命令行使用

安装及配置

步骤一:官网下网MySQL安装包

【MySQL安装包】链接: https://downloads.mysql.com/archives/community/
在这里插入图片描述
下载完后,在一个非中文(无空格、特殊字符)目录下进行解压
在这里插入图片描述

步骤二:设置环境变量

步骤:右键"开始"->“高级系统设置”->“高级”->“环境变量”->“系统变量”->“path”
在这里插入图片描述
新建环境变量:

变量名:MYSQL_HOME
变量值:为MySQL解压的根目录

在这里插入图片描述
在"path"中,添加环境变量

%MYSQL_HOME%\bin

步骤仨:配置MySQL,ini配置文件

在解压后的根目录下(即D:/MySQL/mysql-8.0.33-winx64),创建my.ini文件,并将**“basedir""datadir”**修改成本地的路径
**注意:**需要保存为ANSI编码----使用记事本打开,保存/另存为,选择ANSI编码

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

步骤四:初始化MySQL

搜索CMD,以管理员身份运行,执行以下命令

mysqld --initialize-insecure

操作成功后,会在MySQL根目录生成一个data文件夹,里面存放的是数据信息
在这里插入图片描述
在这里插入图片描述

步骤五:开启MySQL服务

win+R:输入"services.msc"
在这里插入图片描述
进行"服务"
在这里插入图片描述
点击启动或者重新启动

步骤六:测试是否安装成功

以管理员身份运行命令行,输入

mysql -uroot

我这是安装过了,修改后密码了,所有让填写密码,如果是首次安装,输入 “mysql -uroot”按回车可直接显示"welcome…"信息
在这里插入图片描述

步骤七:修改密码

//第一个root为用户名,第二个password为密码
alter user 'root'@'localhost' identified by 'password';

之后再用"mysql -u root -p"命令登录,就会让输入密码,登录成功会显示"welcome…"内容。

问题解决方案

修改密码

在知道密码的情况下修改:

fun1:

打开命令行,执行以下语句

mysql -u root -p

按回车确认, 如果安装正确且 MySQL 正在运行, 会得到以下响应:

Enter password:

若密码存在, 输入密码登录, 不存在则直接按回车登录。
登录成功后你将会看到 Welcome… 的提示语。
修改密码:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

出现Query OK, 0 rows affected (0.36 sec),表示修改成功。

fun2:

通过mysqladmin修改密码
root 用户可以使用 mysqladmin 命令来修改密码,mysqladmin 的语法格式如下:

mysqladmin -u username -h hostname -p password "newpwd"

语法参数说明如下:
usermame 指需要修改密码的用户名称,在这里指定为 root 用户;
hostname 指需要修改密码的用户主机名,该参数可以不写,默认是 localhost;
password 为关键字,而不是指旧密码;
newpwd 为新设置的密码,必须用双引号括起来。如果使用单引号会引发错误,可能会造成修改后的密码不是你想要的。
提示 :由于密码将以明文形式发送到服务器,请使用ssl连接以确保密码安全。
修改成功后,有时有提示信息,提示的信息可以忽略。
在不知道密码的情况下修改:

fun3

  1. 以超级管理员打开cmd,关闭mysql服务
net stop mysql
  1. 跳过权限验证登录mysql
mysqld --shared-memory --skip-grant-tables
  1. 在新的窗口中登录mysql
    使用命令:
mysql -u root -p

无需输入密码,直接回车即可。

  1. 切换到mysql,将密码置空。
use mysql;
update user set authentication_string='' where user='root';

然后刷新权限:

flush privileges;
  1. 设置加密规则并更新新密码,授权(直接复制这些SQL语句你的密码会更新为123456)
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER; 
alter user 'root'@'localhost' identified by '123456';
grant all privileges  on *.*  to "root"@'localhost';
flush privileges;
  1. 设置成功后,重启mysql服务,使用新密码登录
net start mysql

如果修改不成功,附一个链接,可按照这个链接进行设置:
链接: https://blog.csdn.net/linmengmeng_1314/article/details/109484951

8.0版本之后加密规则不同,navicat无法链接到MySQL数据库

用navicat进行连接MySql服务器,报错:

Client does not support authentication protocol requested by server; consider upgrading MySQL client

1.问题原因

通过相关问题查阅,发现是由于navicat版本的问题造成连接失败。mysql8
之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password

MySql查看版本号-1

LITING:~ liting$ mysql -uroot -p    // 进入mysql
Enter password:  //输入mysql密码,如下提示表示登录成功
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 24
Server version: 8.0.14 MySQL Community Server - GPL

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

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> 

MySql查看版本号-2(可以进入mysql后通过mysql命令查看)

mysql> select version();
+-----------+
| version() |
+-----------+
| 8.0.14    |
+-----------+
1 row in set (0.00 sec)

2.解决问题
1.进入mysql

LITING:~ liting$ mysql -uroot -p
Enter password:  // mysql密码
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 26
Server version: 8.0.14 MySQL Community Server - GPL

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

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.

2.输入命令修改加密规则

1.ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘password’ PASSWORD EXPIRE NEVER; password替换为mysql连接密码

ALTER USER 'root'@'localhost' IDENTIFIED BY '12345678' PASSWORD EXPIRE NEVER;

2.ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘password’; password为修改的新密码。

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

3.刷新权限,使修改生效。

FLUSH PRIVILEGES; 

4.查看表中相关信息,确认修改是否真正生效

mysql> use mysql;  //先使用命令 use mysql
Database changed
mysql> select user,host,plugin from user where user='root'; // 在输入该命令
+------+-----------+-----------------------+ 
| user | host      | plugin                |
+------+-----------+-----------------------+
| root | localhost | mysql_native_password |
+------+-----------+-----------------------+
1 row in set (0.00 sec)

如上,密码校验规则已经修改成功

5.通过navicat连接测试

链接: https://blog.csdn.net/weixin_43111077/article/details/108811949

如何让局域网内的其他电脑访问本机的mysql

第一步:先用其他电脑ping本机,看能否ping通
在这里插入图片描述
第二步:开放mysql的权限
打开mysql的命令窗口,修改访问权限为all,即set host=‘%’ where host= ‘localhost’
在这里插入图片描述
第三步:刷新权限
让赋予的权限立即生效:

flush privileges;

不出意外的话重启一下自己的mysql服务,别的电脑就能连上自己的库了,如果不行试下下面的命令

GRANT ALL PRIVILEGES ON *.* TO root @'%' IDENTIFIED BY "mypassword";
FLUSH PRIVILEGES; 

% 表示所有的IP都能访问,也可以修改为专属的
mypassword 为连接密码 需要修改为你自己的

MySQL命令行使用

链接: https://blog.csdn.net/qq_43003203/article/details/114461457

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/998301.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Linux】Systemd 中的单元(Unit)和单元文件(Unit File)怎么理解?

单元(Unit)单元文件(Unit File)感谢 💖 关于systemd是什么,http://t.csdn.cn/pMkG7这篇文章里有详细说明。 这篇文件我们一起来看看Systemd 中的单元(Unit)和单元文件(Un…

C语言经典100例题(50)--#include 的应用练习

目录 题目 问题分析 代码 运行结果 题目 #include 的应用练习 问题分析 头文件的定义:#include 指令告诉预处理器打开指定的文件,并且把此文件的内容插入到当前文件中。因此,如果想让几个源文件可以访问相同的信息,可以把…

算法通关村18关 | 透析回溯的模板

回溯有清晰的解题模板, void backtracking(参数){if (终止条件){存放结果;return;}for (选择本层中的集合元素(画成树,就是树节点孩子的大小) {处理节点;backtracking();回溯,撤销处理结果;}} 1. 从N叉树说起 在回溯之前&#x…

克隆阿里巴巴镜像网站的yum源制作自己的yum源

“你会在一间炉火昏黄的房子里死去,而你父亲的魔法全然失效。那张天鹅绒床是如此温热,你的死亡尚有余温之时,我将从风雪中归来……” 主要使用到 nginx 服务器制作 与 vsftpd 服务器不一样的是 nginx 使用到的是 http 协议 xsftpd 使用到的是…

第14章_瑞萨MCU零基础入门系列教程之QSPI

本教程基于韦东山百问网出的 DShanMCU-RA6M5开发板 进行编写,需要的同学可以在这里获取: https://item.taobao.com/item.htm?id728461040949 配套资料获取:https://renesas-docs.100ask.net 瑞萨MCU零基础入门系列教程汇总: ht…

103. 二叉树的锯齿形层序遍历

103. 二叉树的锯齿形层序遍历 题目-中等难度示例1. bfs 题目-中等难度 给你二叉树的根节点 root ,返回其节点值的 锯齿形层序遍历 。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行&#xff09…

常用串口调试工具(列表)

目录 串口调试助手(微软商店可以下载,无广告)UartAssist(串口调试助手)串口调试助手 5.13.1 串口调试助手(微软商店可以下载,无广告) 链接: https://apps.microsoft.com/store/detail/%E4%B8%B2%E5%8F%A3%E8%B0%83%E8%AF%95%E5%8A%A9%E6%89%8B/9NBLGGH4…

sqli-labs-master安装及报错处理

一、环境的安装 1.phpstudy 安装 Windows版phpstudy下载 - 小皮面板(phpstudy) (xp.cn)https://www.xp.cn/download.html 注意:这里用的是windows版本 2.SQLi-Labs 下载安装 (1)下载 mirrors / audi-1 / sqli-labs GitCodehttps://gitc…

Java8实战-总结24

Java8实战-总结24 用流收集数据收集器简介收集器用作高级归约预定义收集器 用流收集数据 流可以用类似于数据库的操作帮助你处理集合。可以把Java 8的流看作花哨又懒惰的数据集迭代器。它们支持两种类型的操作:中间操作(如filter或map)和终端操作(如count、findFir…

Android与单片机 | 开发板 | 智能硬件 | 智能设备 | 数据协议 |开发总结

一、缘起 工作中经常遇到需要Android程序与各式各样的板子、智能设备进行交互,通信的方式也基本上都是Ble或者Socket tcp/udp等等…其中最重要的一点就是通信的协议、协议、协议重要的是说三遍;通信协议就是用来定义与设备交互的方式和交互过程中数据包…

企业架构LNMP学习笔记37

1、能够理解读写分离的目的; 2、能够描述读写分离的常见实现方式; 3、能够通过项目框架配置文件实现读写分离; 4、能够通过中间件实现读写分离; 业务背景描述: 时间:2014.6.-2015.9 发布产品类型&#x…

【数据结构】线性表的知识点全面总结

目录 1.线性表的顺序表示 1.1顺序表的基本概念 1.2顺序表的基本操作 1.2.1插入 1.2.2删除 1.2.3查找 2.线性表的链式表示 2.1单链表 单链表的基本概念 2.1.1基本操作 2.1.1.1单链表的建立 2.1.1.2插入 2.1.1.3删除 2.1.1.4查找 2.2双链表 2.2.1基本操作 2.2.1.1插入 2.2.…

MySQL高可用九种方案

有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top 首发博客地址 参考视频 MMM方案(单主) MySQL高可用方案之MMM(Multi-Master Replication Manager)是一…

langchain-chatchat或者说fastchat启动访问404的问题

虽然很白痴,但是我还是记录一下我遇到的问题。 1.问题 最近想测试看看langchain的本地知识库效果,看到一个很完备的库,就是lanchain-chatchat。但是我启动了项目后进行对话回答是乱码的。 经过我的排查,问题不出在webui层&…

XSS入门 XSS Challenges

level1(直接注入) <script>alert(xss)</script>level2(双引号闭合标签) 测试 <sCr<ScRiPt>IPT>OonN"\/(hrHRefEF)</sCr</ScRiPt>IPT>发现<>"被转换&#xff0c;构造新的语句 "><script>alert(/xss/)</…

MySQL高可用搭建方案之(MHA)

有的时候博客内容会有变动&#xff0c;首发博客是最新的&#xff0c;其他博客地址可能会未同步,认准https://blog.zysicyj.top 首发博客地址 原文地址 MHA架构介绍 MHA是Master High Availability的缩写&#xff0c;它是目前MySQL高可用方面的一个相对成熟的解决方案&#xff0…

MyBatis 框架入门理论与实践

文章目录 1. MyBatis 框架介绍1.1 MyBatis优点1.2 MyBatis 不足 2. MyBatis 框架整体架构3. MyBatis 的 ORM 介绍4. MyBatis 框架入门开发4.1 入门案例的搭建4.1.1 准备SQL数据4.1.2 新建 SpringBoot 项目4.1.3 pom文件&#xff1a;4.1.4 配置文件4.1.5 mapper 和 mapper.xml4.…

C语言经典100例题(51-54)--学习使用按位与 ,按位或 |,按位异或 ^和按位取反~

目录 题目 问题分析 按位与操作符&#xff08;&&#xff09; 按位或操作符&#xff08;|&#xff09; 按位异或操作符&#xff08;^&#xff09; 按位取反操作符&#xff08;~&#xff09; 代码及运行结果 题目 学习使用按位与& ,按位或 |,按位异或 ^和按位取反…

Android 10.0 禁用插入耳机时弹出的保护听力对话框

1.前言 在10.0的系统开发中,在某些产品中会对耳机音量调节过高限制,在调高到最大音量的70%的时候,会弹出音量过高弹出警告,所以产品 开发的需要要求去掉这个音量弹窗警告功能 2.禁用插入耳机时弹出的保护听力对话框的核心类 frameworks\base\packages\SystemUI\src\com\an…

宋浩高等数学笔记(十二)无穷级数

完结&#xff0c;宋浩笔记系列的最后一更~ 之后会出一些武忠祥老师的错题&笔记总结&#xff0c;10月份就要赶紧做真题了