• MySQL发生Can''t connect to MySQL server on localhost (10061)解决方法


    我遇到的问题是Navicat可以登录MySQL但自己本地命令行就会报如上标题的问题。

    mysql 8.0版本的问题
    正确步骤。

    方法一

    1.下载MySQL8.0后解压,根目录没有data文件夹和my.ini文件,我们也不要创建。

    (若已经安装了MySQL的将服务停止,删除安装目录下的data和my.ini,当然我建议你找个地方吧my.ini暂存一下,还有你需要的数据库备份文件
    然后删除服务
    mysqld --remove

    关于找不到my.ini的问题(经检验,my.ini文件还是要在这加入才有效,不然下面这些步骤完成之后再做就打不开服务了)

    你可能会在这里找到
    fa9e3d612e2372ecdd0bdff79c2ae19a.jpeg
    c盘,programData文件夹里面的MySQL目录下
    当然还有可能在
    ba0d57b319c79cef2a8a3519340d22e8.png
    图二来自MySQL 8.0版本安装后,安装目录下找不到my.ini文件

    如果你哪里都找不到可以来下载,当然也可以自己写,但下载的这个会比较全,自己修改起来也好找
    my.ini下载
    如果这个下载连接无效的话通知我一下哦,还有积分如果被动被改高了,也给我说一下我改成0积分。

    一些关键修改(主要看你的需求,做些设置)

    [client] 
    default-character-set = utf8 
    port=3306
    [mysql] 
    default-character-set = utf8 
    [mysqld]  
    character-set-server = utf8
    port=3306(自己用什么接口填什么接口,默认是3306)
    basedir=根目录(自行填自己的安装位置)
    datadir=根目录(自行填自己的安装位置)data 
    default-storage-engine=INNODB
    sql-mode="STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION"
    

    2.将“根目录/bin”路径添加到环境变量中。

    3.用管理员启动命令行,win10是右键左下角win图标,选择“Windows powershell(管理员)”。

    4.输入

    mysqld --initialize-insecure --user=mysql
    这一步可能等待时间很长

    5.然后输入

    mysqld --install mysql

    6.输入

    net start mysql

    7.输入

    mysql -u root
    初始化后不需要输入密码

    8.初始化密码

    alter user 'root'@'localhost' identified by '123456'
    退出
    exit
    再次登录
    mysql -u root -p
    输入密码123456就可以登录了

    9.建立远程访问

    #使用初始库
    >use mysql;
    #查看用户表
    >select host, user, plugin from user;
    #发现没有host是%的用户root,于是创建一个
    >create user 'root'@'%' identified by '123456';
    #给权限,第二句不能用就退出再登一次
    >GRANT ALL privileges on *.* to 'root'@'%' with grant option;
    >flush prilileges;
    
    

    这时再拿Navicat登录就可以登录了,注意自己的端口号不要写错了

    方法二

    1、在原有数据库情况下,把data文件夹删除,保留my.ini文件,把需要的内容填上,不需要的内容注释掉
    2、将“根目录/bin”路径添加到环境变量中
    3、用管理员启动Windows powershell
    4、执行下列语句

    mysqld --remove
    mysqld --initialize --console (该语句会生成一个初始密码,例如这样的root@localhost: 4aO40dXvxg+S,把后面的内容保存,之后要填密码)
    mysqld --install
    net start mysql
    mysql -u root -p(该语句接下来填的密码就是上面保存的那个)
    alter user 'root'@'localhost' identified by '123456'(修改初始密码)
    按照上面方法一的创建新用户等步骤就可以了
    
  • 相关阅读:
    JSP配置虚拟路径及虚拟主机
    Java中遍历集合的常用方法
    【洛谷P2879】[USACO07JAN]Tallest Cow S
    【洛谷P1080】[NOIP2012 提高组] 国王游戏
    算数基本定理
    【csp202104-3】DHCP服务器
    【csp202104-2】邻域均值
    电话网络
    联通数
    【洛谷P4447】[AHOI2018初中组]分组
  • 原文地址:https://www.cnblogs.com/AlinaL/p/14041959.html
Copyright © 2020-2023  润新知