Mysql问题整理

PHPer 2018-01-18 1405 0 0
这里整理下Mysql使用中遇到的各种问题

这里整理下Mysql使用中遇到的各种问题...

立即注册

更新于:2018-01-18 13:32:27
    您需要登录后才可以评论。 立即注册

    全网最详尽的Centos和Windows系统 Mysql8 root忘记密码解决办法

    运行环境Centos Stream8和Windows10 ,Mysql版本8.0.29 忘记root密码解决方法:1、使用“grep 'temporary password' /var/log/mysqld.log”命令找回安装时的初始密码即可;2、修改配置文件“my.cnf”,免密登录mysql服务器,使用update命令设置新密码即可。 之后设置密码时遇到:error:Your password does not satisfy the current policy requirements的解决办法。

    centos下mysql默认密码忘记的解决方法

    方法一、找回安装时的初始密码:

    直接执行以下命令

    grep 'temporary password' /var/log/mysqld.log
    

    此方法对于首次安装mysql的有效,如果输入此密码,提示密码错误,则用下面的办法

    方法二、配置my.cnf文件,免密登录mysql服务器,使用update命令设置新密码

    1、修改配置文件,免密登录mysql服务器

    vim /etc/my.cnf
    

    (注:windows下修改的是my.ini)在[mysqld]后面添加下面两行

    explicit_defaults_for_timestamp=true
    skip-grant-tables
    

    然后保存并退出,重启mysql

    service mysqld restart
    

    直接无密码登录

    mysql -uroot
    

    ok,登录进来了

    Windows下root无密码登陆

    注意:MySQL8 不能直接使用skip-grant-tables命令来重置密码

    先停止mysql服务

    方法一:任务管理器-服务下面找到MySQL服务,直接停掉 ...

    立即注册
    更新于:2022-06-21 09:57:20

    Mysql server has gone away 报错原因分析及解决办法

    General error: 2006 MySQL server has gone awayVariable_nameValuemax_allowed_packet1024看到这个1024,就是1KB,是真没想到,因为我配置文件里是设置成了256M

    General error: 2006 MySQL server has gone away

    看到这个1024,就是1KB,是真没想到,因为我配置文件里是设置成了256M,不知道怎么回事什么时候这个重置了,变成了1024,没有调用配置文件里的信息!下面是网上找到的一个不错的内容。分析的挺全面,这里引用下。因为自己就被网上的各种各样的内容坑了,里面多是说了一种情况,分析的不全面。 ...

    立即注册
    更新于:2022-05-29 10:26:06

    Yii2数据库报错-SQLSTATE[HY093]: Invalid parameter number: no parameters were bound

    在提交表单时遇到了报错,在本地运行没问题,但是线上的项目只要提交内容稍多就会报错。PHP代码是一样的,于是想到是服务器配置那里和本地的不一样导致的

    在提交表单时遇到了报错,在本地运行没问题,但是线上的项目只要提交内容稍多就会报错。PHP代码是一样的,于是想到是服务器配置那里和本地的不一样导致的,但是提示是没绑定,于是就像办法换了几种Yii2数据库操作的方式问题还在,最后在网上查,下面的分析基本是ok的,但是解决办法给的不好。尝试了后还是会报错。最后找到了解决的办法,我会在最后说。


    并不是参数没有绑定,查看findAll()的源码

    public function findAll($condition='',$params=array())
    {
        Yii::trace(get_class($this).'.findAll()','system.db.ar.CActiveRecord');
        $criteria=$this->getCommandBuilder()->createCriteria($condition,$params);
        return $this->query($criteria,true);
    }

    query实际上执行的是:

    $command=$this->getCommandBuilder()->createFindCommand($this->getTableSchema(),$criteria);

    $command->queryAll();

    而createFindCommand() 调用bindValue(),里面的代码如下:

    $this->_statement->bindValue($name,$value,$this->_connection->getPdoType(gettype($value)));
    

    连接已经timeout,失效了。bindValue无用。 ...

    立即注册
    更新于:2022-05-29 10:20:05

    mysql 警告 could not be resolved: Name or service not known

    问题: mysql DNS反解:skip-name-resolve 错误日志有类似警告: 1.120119 16:26:04 [Warning] IP address '192.168.1.10' could not...

    问题: mysql DNS反解:skip-name-resolve


    错误日志有类似警告:


    1.120119 16:26:04 [Warning] IP address '192.168.1.10' could not be resolved: Name or service not known

    2.120119 16:26:04 [Warning] IP address '192.168.1.14' could not be resolved: Name or service not known

    3.120119 16:26:04 [Warning] IP address '192.168.1.17' could not be resolved: Name or service not known

    通过show processlist发现大量类似如下的连接:

    1.|592|unauthenticated user|192.168.1.10:35320|NULL|Connect| |login|NULL|

    2.|593|unauthenticated user|192.168.1.14:35321|NULL|Connect| |login|NULL|

    3.|594|unauthenticated user|192.168.1.17:35322|NULL|Connect| |login|NULL|

    skip-name-resolve 参数的作用:不再进行反解析(ip不反解成域名),这样可以加快数据库的反应时间。

    修改配置文件添加并需要重启:

    代码如下:

    [mysqld]
    skip-name-resolve
    

    其实就是在[mysqld]下面一行加入skip-name-resolve重启mysql服务就可以了。

    下面是更加详细的解释:

    现象:

    程序连接mysql时,mysql的error.log里面提示:

    [Warning] IP address '10.0.0.220' could not be resolved: Name or service not known

    原因:

    Mysql数据库服务器没有配置 /etc/hosts,也没有DNS服务,导致mysqld线程解析IP对应的主机名时,解析失败。

    参考资料:

    Mysql域名解析:

    当一个新的客户端尝试跟mysqld创建连接时,mysqld产生一个新线程来处理这个请求。新线程会先检查请求建立连接的主机名是否在Mysql的主机名缓冲中,如果不在,线程会尝试去解析请求连接的主机名。

    解析的逻辑如下:

    a. Mysql线程通过gethostbyaddr()把获取的IP地址解析成主机名,然后通过gethostbyname()把获取的主机名解析成IP地址,保障主机名和IP地址对应关系的准确;

    b. 如果操作系统支持使用安全进程的gethostbyaddr_r()和gethostbyname_r() 调用,Mysqld线程可以用它俩来优化主机名解析;

    c. 如果操作系统不支持安全线程调用,Mysqld进程先做一个互斥锁,然后调用gethostbyaddr()和gethostbyname()解析主机名。此时,在第一个进程释放掉主机名缓冲池的主机名之前,其它进程无法再次解析这个主机名; <-------MySQL手册里面在此处说的host name ,意思应该是指同一个IP地址和对应的第一个主机名关系。

    在启动mysqld进程是,可以使用 --skip-name-resolve 参数禁用DNS的主机名解析功能,禁用该功能后,在MySQL授权表里面,你只能使用IP地址。 ...

    立即注册
    更新于:2018-01-27 21:50:11

    Mysql用特殊字符设置密码遇到的问题

    Linux下Mysql设置密码的一些问题,当设置密码中含义特殊字符,比如~!@#¥ 这样的,在你登陆mysql,提示输入密码时,这些密码前必须加入转义字符,好像是反斜杠,否则...

    Linux下Mysql设置密码的一些问题,

    当设置密码中含义特殊字符,比如~!@#¥ 这样的,在你登陆mysql,提示输入密码时,这些密码前必须加入转义字符,好像是反斜杠,否则mysql是识别不到这些密码的,或者你在命令行里,直接连带密码一起写入。当然这样明文显示不安全。如果你要远程用工具登陆Mysql,比如phpmyadmin,那你就要在特殊字符前加转义字符。...

    立即注册
    更新于:2022-05-29 10:15:06

    Mysql的函数substring使用注意事项

    3、截取字符串 substring(str, pos) substring(str, pos, length) 说明:substring(被截取字段,从第几位开始截取) substring(被截取字段,从第几位开始截取,截取...

    3、截取字符串
    substring(str, pos)
    substring(str, pos, length)
    说明:substring(被截取字段,从第几位开始截取)
    substring(被截取字段,从第几位开始截取,截取长度)
    例:select substring(content,5) as abstract from my_content_t
    select substring(content,5,200) as abstract from my_content_t
    ...

    立即注册
    更新于:2018-01-30 21:55:27

    MySQL 5.7内存使用分析

    MySQL如何使用内存?首先,介绍MySQL使用内存的一些方法:1. 会话级别的内存消耗(连接私有内存):如sort_buffer_size等,每个会话都会开辟一个sort_buffer_size来...

    MySQL如何使用内存?

    首先,介绍MySQL使用内存的一些方法:

    1. 会话级别的内存消耗(连接私有内存):如sort_buffer_size等,每个会话都会开辟一个sort_buffer_size来进行排序操作。

    2. 全局的内存消耗(共享内存):例如:innodb_buffer_pool_size等,全局共享的内存段。

    MySQL内存计算器:http://www.mysqlcalculator.com

    1ba04b1f93_normal.png

    全局内存消耗(共享内存)相关参数

    1)innodb_buffer_pool_size

    使用过Innodb的同学都知道,这块内存是Innodb存储引擎最重要的内存,直接关系到MySQL的读写性能。与MyISAM表只缓存索引,数据寄望于OS系统缓存不同。Innodb一般都会关闭OS的缓存,所有读到数据页和索引都直接存在数据库层的innodb_buffer_pool中的。

    InnoDB缓冲池缓存着InnoDB表,索引,及其它辅助缓冲器中的数据。为了实现大容量读取操作的效率,缓冲池被分成可以容纳多行的页。为了缓存管理的效率,缓冲池被实现为页面的链接列表,很少使用的数据使用LRU算法的变体进行页面替换。

    缓冲池的大小对于系统性能很重要:

    • InnoDB使用malloc()方法在服务器启动时为整个缓冲池分配内存,通常,推荐innodb_buffer_pool_size值为系统内存的50%至75%。innodb_buffer_pool_size可以在服务器运行时动态配置。
    • 在具有大量内存的系统上,你可以通过将缓冲池划分为多个缓冲池实例来提高并发性,其innodb_buffer_pool_instances系统变量用来定义缓冲池实例的数量。
    • 缓冲池太小可能会导致过多的交换,因为页面从缓冲池中刷新后仅在短时间内可能再次需要。
    • 缓冲池太大可能会因为内存竞争而导致交换。

    2)innodb_additional_mem_pool_size

    主要用于存放MySQL内部的数据结构和Innodb的数据字典,所以大小主要与表的数量有关,表越多值越大。庆幸的是这个值是可变的,如果不够用的话,MySQL会向操作系统申请的。该值默认8M,AWS所有规格都是统一的2M,由于这个值可以动态申请,所以我觉得2M应该是满足需求的。

    3)innodb_log_buffer_size

    这个是redolog的缓冲区,为了提高性能,MySQL每次写日志都将日志先写到一个内存Buffer中,然后将Buffer按照innodb_flush_log_at_trx_commit的配置刷到disk上。目前,我们所有实例的innodb_flush_log_at_trx_commit设置为了1,即每次事务提交都会刷新Buffer到磁盘,保证已经提交的事务,redo是不会丢的。AWS该值也设的是1(为了保证不丢数据),这个值的大小主要影响到刷磁盘的次数,设置的过小,Buffer容易满,就会增加fsync的次数,设置过大,占用内存。该值默认是8M,AWS所有规格统一128M,我觉得目前每次提交都会刷buffer,所以除非有大事务的情况,一般buffer不太可能被占满,所以没必要开的很大, 8M应该是满足需求的。

    4)key_buffer_size

    MyISAM表的key缓存,这个只对MyISAM存储引擎有效,所以对于我们绝大多数使用Innodb的应用,无需关心。

    5)query_cache_size

    MySQL对于查询的结果会进行缓存来节省解析SQL、执行SQL的花销,query_cache是按照SQL语句的Hash值进行缓存的,同时SQL语句涉及的表发生更新,该缓存就会失效,所以这个缓存对于特定的读多更新少的库比较有用,对于绝大多数更新较多的库可能不是很适用,比较受限于应用场景,所以AWS也把这个缓存给关了。我觉得这个值默认应该关闭,根据需求调整。

    会话级别的内存消耗(连接私有内存)

    上面这些就是MySQL主要的共享内存空间,这些空间是在MySQL启动时就分配的,但是并不是立即使用的。MySQL还有一部分内存是在用户连接请求到达时动态分配的,即每个MySQL连接都单独一个缓存,这部分缓存主要包括:

    1)read_buffer_size

    每个线程连续扫描时为扫描的每个表分配的缓存区的大小(字节)。如果进行多次连续扫描,可能还需要增加该值。默认值为1311072,只有当查询需要的时候,才分配read_buffer_size指定的全部内存。

    2)read_rnd_buffer_size

    当以任意顺序读取行时,可以分配随机读取缓冲区,通过该缓冲区读取行,以避免磁盘寻找。read_rnd_buffer_size系统变量决定缓冲器大小。

    3)sort_buffer_size

    每一个要做排序的请求,都会分到一个sort_buffer_size大的缓存,用于做order by和group by的排序,如果设置的缓存大小无法满足需要,MySQL会将数据写入磁盘来完成排序。因为磁盘操作和内存操作不在一个数量级,所以sort_buffer_size对排序的性能影响很大。由于这部分缓存是即使不用这么大,也会全部分配的,所以对系统内存分配开销是比较大的,如果是希望扩大的话,建议在会话层设置,默认值2M,AWS也是2M。...

    立即注册
    更新于:2018-02-14 01:04:10

    mysql 命令整理

    更改密码mysqladmin -uroot -p原密码 password 新密码

    更改密码

    mysqladmin -uroot -p原密码 password 新密码...

    立即注册
    更新于:2018-02-14 17:08:50

    【mysql】主键、普通索引、唯一索引和全文索引的比较

    不过 FULLTEXT 用于搜索很长一篇文章的时候,效果最好。(待验证 20200404)全文索引(适合在进行模糊查询的时候使用)MySQL从3.23.23版开始支持全文索引和全文检索。...

    不过 FULLTEXT 用于搜索很长一篇文章的时候,效果最好。(待验证 20200404)

    全文索引(适合在进行模糊查询的时候使用)MySQL从3.23.23版开始支持全文索引和全文检索。在MySQL中,全文索引的索引类型为FULLTEXT。全文索引可以在CHAR、VARCHAR或者TEXT类型的列上创建。它可以通过CREATE TABLE命令创建,也可以通过ALTER TABLE或CREATE INDEX命令创建。对于大规模的数据集,通过ALTER TABLE(或者CREATE INDEX)命令创建全文索引要比把记录插入带有全文索引的空表更快。


    MYSQL索引用来快速地寻找那些具有特定值的记录,所有MySQL索引都以B-树的形式保存。如果没有索引,执行查询时MySQL必须从第一个记录 开始扫描整个表的所有记录,直至找到符合要求的记录。表里面的记录数量越多,这个操作的代价就越高。如果作为搜索条件的列上已经创建了索引,MySQL无 需扫描任何记录即可迅速得到目标记录所在的位置。如果表有1000个记录,通过索引查找记录至少要比顺序扫描记录快100倍。


    mysql在使用like查询中,能不能用到索引?在什么地方使用索引呢?

    2

    3

    在使用like的时候,如果使用‘%%’,会不会用到索引呢?

    EXPLAIN SELECT * FROM `user` WHERE username LIKE'%ptd_%';...

    立即注册
    更新于:2020-04-04 11:22:28

    没有接收到要导入的数据。可能是文件名没有提交,也可能是文件大小超出 PHP 限制。

    网上推荐的方法是:

    修改PHP上传文件大小限制的方法

    1. 一般的文件上传,除非文件很小.就像一个5M的文件,很可能要超过一分钟才能上传完.

    但在php中,默认的该页最久执行时间为 30 秒.就是说超过30秒,该脚本就停止执行.

    这就导致出现 无法打开网页的情况.这时我们可以修改 max_execution_time

    在php.ini里查找

    max_execution_time

    默认是30秒.改为

    max_execution_time = 0

    0表示没有限制

    2. 修改 post_max_size 设定 POST 数据所允许的最大大小。此设定也影响到文件上传。

    php默认的post_max_size 为2M.如果 POST 数据尺寸大于 post_max_size $_POST 和 $_FILES superglobals 便会为空.

    查找 post_max_size .改为...

    立即注册
    更新于:2020-04-10 22:25:43

    Mysql 报错'SQLSTATE[HY000] [1045] Access denied for user 'root'@'127.0.0.1' (using password: YES)

    原因可能是dsn中的host信息错误,也可能是数据库名称错误,也可能是端口错,也可能是密码错误,等等

    'dsn' => 'mysql:host=localhost;dbname=rageframe2',...

    立即注册
    更新于:2021-12-10 22:36:29

    php连接mysql报错The server requested authentication method unknown to the client

    ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘123456’;FLUSH PRIVILEGES; 无效后再在MySql配置文件里修改default_authentication_plugin=mysql_native_password​

    php7.0连接mysql8.0报错:The server requested authentication method unknown to the client

    是因为mysql80使用了新的密码验证插件:caching_sha2_password,而在php7.0并不支持这种方式。

    解决办法:

    1.升级php

    2.修改mysql的配置文件,my.ini

    找到mysqlId下的default-authentication-plugin配置项修改其值为mysql_native_password

    default_authentication_plugin=mysql_native_password

    重启mysql

    然后在win+r输入cmd进入命令行模式

    cd D:\Dsware\mysql\bin (把MySQL安装的路径输入);

    再mysql -u root -p回车,输入密码:...

    立即注册
    更新于:2021-12-11 18:21:12

    Mysql登录提示ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)

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

    先在电脑上看服务开启了没,Windows在计算机管理里面的服务里看下,这里看到有两个版本的,而且状态都没启动,肯定登录不上了。现在想办法删除掉一个版本,或者两个版本都删除了。

    4967fa6924-qq-jie-tu20211212142327_normal.png ...

    立即注册
    更新于:2021-12-12 14:54:07

    Mysql报错SQLSTATE[HY000]: General error: 1366 Incorrect string value: '\xF0\x9F\x8D\x8D\xE5\x86...'

    执行Yii::$app->db->createCommand($sql)->execute() ;报错,不知道怎么解决

    Mysql报错SQLSTATE[HY000]: General error: 1366 Incorrect string value: '\xF0\x9F\x8D\x8D\xE5\x86...' for column 'title' at row 1 // The SQL being executed was: INSERT INTO w_gather (title, url, notes, search_key,search_domain )...

    立即注册
    更新于:2021-12-25 01:27:51

    mysql数据库操作 报错 #1030 - Got error 176 &quot;Read page with wrong checksum&quot;from storage engine Aria

    在名为mysql的数据库中,勾选db表。在下方选中项位置选择“修复表”,OK。

    您的 SQL 语句已成功运行。
    REPAIR TABLE `db`;
    

    之后在执行数据库操作,比如更改表备注等,正常的话就不会有这个报错了...

    立即注册
    更新于:2022-05-28 12:08:49

    Linux系统彻底卸载MySQL数据库

    发布于2019-08-28 12:15:55阅读12.2K

    一、首先查询系统是否安装了MySQL

     rpm -qa | grep -i mysql

    输出结果表示,我安装的MySQL Server,Client都是5.6.44的,因为我系统支持的版本是要5.7+的版本,所以不得不卸载重装 

    714b797330_normal.png

    二、关闭MySQL服务

    查看MySQL服务运行状态:

    service mysql status

    如下图所示服务正在运行中:

    64010b11f3_normal.png

    停止MySQL服务:

    service mysql stop

    三、查看MySQL对应的文件夹

    find / -name mysql

    输出结果为:

    /etc/selinux/targeted/active/modules/100/mysql
    /etc/logrotate.d/mysql
    /var/lib/mysql
    /var/lib/mysql/mysql
    /usr/share/mysql
    /usr/bin/mysql
    /usr/lib64/mysql

    四、卸载并删除MySQL安装的组键服务

    我的MySQL组件在刚开始的时候就已经查询了,主要就是下面这几个(所以使用 rpm -ev删除对应组件即可):

    rpm -ev mysql-community-common-5.6.44-2.el7.x86_64
    rpm -ev mysql-community-release-el7-5.noarch
    rpm -ev mysql-community-client-5.6.44-2.el7.x86_64
    rpm -ev mysql-community-server-5.6.44-2.el7.x86_64
    rpm -ev mysql-community-libs-5.6.44-2.el7.x86_64

    在卸载服务是遇到了三个组件服务无法卸载问题,提示缺少依赖postfix-2:2.10.1-7.el7.x86_64:...

    立即注册
    更新于:2022-06-02 20:53:54

    Linux下mysql5.7忘记root密码的解决方法

    一、首先更改my.cnf的配置文件,并重启mysql

    在my.cnf文件中的[mysqld] 下加入下面一行,其余不做改变。

    [root@localhost ~]# vim /etc/my.cnf
    [mysqld]
    skip-grant-tables
    [root@localhost ~]# systemctl restart mysqld

    28dabda5c4_normal.png

    二、登录MySQL,此时不需要输入密码,直接回车即可

    mysql -uroot -p

    三、切换到mysql数据库,查询user表的结构,这里有需要的字段。

    在MySQL5.7版本中mysql数据库下已经没有password这个字段了,password字段改成了authentication_string字段。

    mysql> use mysql;
    Reading table information for completion of table and column names
    You can turn off this feature to get a quicker startup with -A

    Database changed
    mysql> desc user;
    +------------------------+-----------------------------------+------+-----+-----------------------+------- +
    | Field | Type | Null | Key | Default | Extra
    |+------------------------+-----------------------------------+------+-----+-----------------------+------- +
    | Host | char(60) | NO | PRI | |
    || User | char(32) | NO | PRI | |
    || Select_priv | enum(N,Y) | NO | | N |
    || Insert_priv | enum(N,Y) | NO | | N |
    || Update_priv | enum(N,Y) | NO | | N |
    || Delete_priv | enum(N,Y) | NO | | N |
    || Create_priv | enum(N,Y) | NO | | N |
    || Drop_priv | enum(N,Y) | NO | | N |
    || Reload_priv | enum(N,Y) | NO | | N |
    || Shutdown_priv | enum(N,Y) | NO | | N |
    || Process_priv | enum(N,Y) | NO | | N |
    || File_priv | enum(N,Y) | NO | | N |
    || Grant_priv | enum(N,Y) | NO | | N |
    || References_priv | enum(N,Y) | NO | | N |
    || Index_priv | enum(N,Y) | NO | | N |
    || Alter_priv | enum(N,Y) | NO | | N |
    || Show_db_priv | enum(N,Y) | NO | | N |
    || Super_priv | enum(N,Y) | NO | | N |
    || Create_tmp_table_priv | enum(N,Y) | NO | | N |
    || Lock_tables_priv | enum(N,Y) | NO | | N |
    || Execute_priv | enum(N,Y) | NO | | N |
    || Repl_slave_priv | enum(N,Y) | NO | | N |
    || Repl_client_priv | enum(N,Y) | NO | | N |
    || Create_view_priv | enum(N,Y) | NO | | N |
    || Show_view_priv | enum(N,Y) | NO | | N |
    || Create_routine_priv | enum(N,Y) | NO | | N |
    || Alter_routine_priv | enum(N,Y) | NO | | N |
    || Create_user_priv | enum(N,Y) | NO | | N |
    || Event_priv | enum(N,Y) | NO | | N |
    || Trigger_priv | enum(N,Y) | NO | | N |
    || Create_tablespace_priv | enum(N,Y) | NO | | N |
    || ssl_type | enum(,ANY,X509,SPECIFIED) | NO | | |
    || ssl_cipher | blob | NO | | NULL |
    || x509_issuer | blob | NO | | NULL |
    || x509_subject | blob | NO | | NULL |
    || max_questions | int(11) unsigned | NO | | 0 |
    || max_updates | int(11) unsigned | NO | | 0 |
    || max_connections | int(11) unsigned | NO | | 0 |
    || max_user_connections | int(11) unsigned | NO | | 0 |
    || plugin | char(64) | NO | | mysql_native_password |
    || authentication_string | text | YES | | NULL |
    || password_expired | enum(N,Y) | NO | | N |
    || password_last_changed | timestamp | YES | | NULL |
    || password_lifetime | smallint(5) unsigned | YES | | NULL |
    || account_locked | enum(N,Y) | NO | | N |
    |+------------------------+-----------------------------------+------+-----+-----------------------+------- +
    45 rows in set (0.00 sec)

    把这个复制下来,修改密码时会用到,当然也可以手打。 a0f9ff9073_normal.png...

    立即注册
    更新于:2022-06-15 00:10:31

    ERROR 1130 (HY000): Host '127.0.0.1' is not allowed to connect to this MySQL

    ERROR 1130 (HY000): Host '127.0.0.1' is not allowed to connect to this MySQL server

    MySQL 登录时出现不允许 127.0.0.1 登录的错误,是因为 MySQL 库的 User 表中的 Host 字段没有授权用户登录。

    解决这个问题需要分两种情况。

    情况一是安装 MySQL 后第一次使用 root 用户和初始密码登录 MySQL 数据库时出现 Host is not allowed to connect to this MySQL server

    检查配置文件 my.ini 的 [mysqld] 下面是否有 skip-name-resolve, 如果有,把它删除掉或者注释掉。

    如果以 mysqld.exe 进程形式启动而不是以服务的形式安装 MySQL,检查启动 mysqld.exe 的参数中是否有--skip-name-resolve,如果有,把它删除掉。

    重新启动 MySQL 数据库以后,再次以 root 用户和初始密码登录 MySQL 数据库,运行以下 SQL 语句,将 root 用户的 Host 字段设置为%.

    USE `mysql`;
    UPDATE `User` SET `Host`='%' WHERE `User`='root';

    如果出现 ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement. 的错误,需要在执行以上 SQL 前执行以下 SQL 语句修改密码。其中的 YOUR_OWN_PASSWORD 是设置的新密码,请替换成你自己的新密码。...

    立即注册
    更新于:2022-06-19 20:08:02
    相关内容

    说说国产电影

    大陆电影《霸王别姬》到底如何?

    周星驰的喜剧之王

    真正的难忘,再说周星驰,《大话西游》两部曲

    不得不提的《英雄本色》,一帮演员和剧组太给力了,当然导演厉害了!

    2010年后的国产电影,看来除了《让子弹飞》其他都可以带过了?

    《芳华》这样露大腿合适吗?

    《国士无双》还是那么好看

    算是知道花木兰那么多成本都花在哪了

    评论《八佰》-为了照顾部分同学的逻辑思维能力,俺们通俗一把

    【豆瓣评论】评《中国合伙人》

    推荐内容

    分享几个好用的bt搜索bt资源下载网址网站

    影视电影剧集动漫综艺bt资源在线播放网址网站推荐分享

    全网最新bt磁力搜索引擎bt资源bt网站网址分享

    人气美女女优百度指数排行榜(波多野结衣,苍井空,三上悠亚,深田咏美,桥本有菜,北条...

    最强人造人深田咏美,业界的社交女王

    人生起起落落的三上悠亚,成名前的清纯风,怎么搭配出来的?

    业内第一大长腿,桥本有菜的腿究竟有多长

    波多野结衣,岛国业界著作最多的超级劳模

    日本AV界NO.1,苍井空是多少宅男的疯狂?

    美女女优视频混剪 This Girl-Laza Morgan

    怎样使用V2Ray代理和SSTap玩如魔兽世界/绝地求生/LOL台服/战地3/黑色沙漠/彩...

    sstap游戏代理教程 从此玩如魔兽世界/绝地求生/LOL台服/战地3/黑色沙漠/彩虹六...

    影视电影剧集动漫综艺bt资源在线播放网址网站推荐分享