mysql授权问题:1004 Access denied for user '用户名'@'%' to database

场景:平时直接用root登录到mysql服务器上进行SQL语句查询,当想用python连接mysql时,提示1045, "Access denied for user ‘root‘@‘IP地址‘ (using password: YES)",然后用create user 用户名 identified by ‘密码‘创建了用户名为自己名字的用户,再去执行python,提示1004 Access denied for user ‘用户名‘@‘%‘ to database,这时候就要进入mysql用select * from mysql.user \G查看当前所有用户的情况,会发现别人的权限里很多都是Y,而自己的都是N,所以意识到是权限问题。

解决:给自己的用户名添加权限  grant all privileges on *.* to 用户名@IP地址,然后再select * from mysql.user \G会发现自己的权限也变成了Y,这时候python就能连接数据库了。

#!/usr/bin/env python
#-*- coding: utf-8 -*-
import MySQLdb

conn = MySQLdb.connect(host = "IP地址", user = "用户名", passwd = "密码",
db = "数据库名", port = 3306, charset="utf8")
cur = conn.cursor()
cur.execute("set NAMES UTF8")

if __name__ == ‘__main__‘:

conn.commit()
cur.close()
conn.close()

mysql授权问题:1004 Access denied for user '用户名'@'%' to database

时间: 2024-11-16 05:10:53

mysql授权问题:1004 Access denied for user '用户名'@'%' to database的相关文章

Mysql,ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'

ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql' 刚在服务器上装上mysql,发现以root加密码的方式总是登录不了,而直接输入mysql则直接就可以登录了.或者以mysql –u root方式可以登录,但是实习上登录上去也是一个空用户(''@'localhost'),不是root用户,看不了其他数据库. 干货,删除空用户方法 1.关闭mysql service mysqld stop 或者

ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'

在centos下安装好的mysql,用root帐号连上mysql,查看数据库结果只有information_schema库,我原来的库和mysql库都不见了,然后执行use mysql提示错误,如下: mysql> use mysql; ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql' 提示:ERROR 1044 (42000): Access denied for user ''@'loc

遇到错误ERROR 1044 (42000): Access denied for user ''@'localhost'to database 'mysql',的解决办法

新装的mysql,访问mysql数据库是遇到问题:ERROR 1044 (42000): Access denied for user ''@'localhost'to database 'mysql', [[email protected] mysql-5.1.61]# mysql -u root -p Enter password: Welcome to the MySQL monitor.  Commands end with ; or \g. Your MySQL connection

MySQL登录时出现 Access denied for user 'root'@'xxx.xxx.xxx.xxx' (using password: YES) 的解决办法(远程授权问题)

[环境:Win10通过Hyper创建Ubuntu虚机,docker里运行mysql5.7] 症状: ----------------------------------- 远程上去, 1. docker exec -it mysql /bin/bash 2. mysql -u root -p 输入密码,可以进入mysql库. 排除了防火墙.端口等方面的问题,那很可能就是mysql远程授权方面的问题了. 解决办法: ----------------------------------- 1. 按照

MySQL出现Access denied for user 'root'@'%' to database 'netai_test'问题

访问数据库时报错信息 Access denied for user 'root'@'%' to database 'netai_test' 原因:这是由于创建数据库后没有对用户授权,使用户可以访问数据库的原因.本地访问当然可以. 通过对用户授权就可以了. grant all on (数据库名).* to '(用户)'@'%' identified by '(用户密码)' with grant option; MySQL出现Access denied for user 'root'@'%' to

MySQL ERROR 1045 (28000): Access denied for user 'root'@'192.168.23.224' (using password: YES)

出现如题错误可能原因: 1.密码有误.检查密码是否与 mysql.user 中 root 用户对应密码一致(我就是这个原因,被折磨整个下午和晚上) 2.用户 root 没有授权,授权命令如下: grant all on *.* to [email protected]'%' identified by 'password'; flush privileges; 3.数据库端口被墙了.关闭防火墙或者添加端口特例 MySQL ERROR 1045 (28000): Access denied for

Access denied for user ''@'localhost' to database 'mysql'问题

Access denied for user ''@'localhost' to database 'mysql'问题 MySQL : Access denied for user ''@'localhost' to database 'mysql'问题看点.原创starmyao 最后发布于2018-08-24 21:10:23 阅读数 7880 收藏展开 问题描述:    MySQL命令行,登陆root账户的时候,密码为不为空,但是执行‘use mysql;’命令的时候,总是提示:‘Acces

MYSQL问题解决方案:Access denied for user 'root'@'localhost' (using password:YES)

这两天在MyEclipse中开发Web项目时,连接MySQL数据库,出现问题:Access denied for user 'root'@'localhost' (using password:YES). 经查找资料发现是root帐户默认不开放远程访问权限,所以需要修改一下相关权限. 解决方案: 打开MySQL目录下的my.ini文件,在文件的最后添加一行"skip-grant-tables",保存并关闭文件.(WIN7默认安装,my.ini在C:\ProgramData\MySQL\

Mac下解决mysql ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

Maybe updating the package the updater overwrote the root password. To restore it: Stop mysqld deamons. $ sudo service mysqld stop Go to mysql/bin directory $ cd /usr/bin Start a mysql deamon with this option: $ sudo mysqld_safe --skip-grant-tables O