MysqL的root用户不允许远程连接

原文:MysqL的root用户不允许远程连接

今天程序报了异常:java.sql.SQLException: Access denied for user 'root'@'RJB-Z' (using passwrod)。

String url ="jdbc:mysql://192.168.1.169:3306/test“;

密码没错的,在命令行窗口都能登进去。上网查了下发现是因为root用户不允许远程连接,我在这个网站(http://xucons.javaeye.com/blog/278581)找到了解决方法:改表或者赋权。http://xucons.javaeye.com/blog/278581

如果你连接mysql的时候发生这个错误:

Sql代码   

  1. ERROR 1130: Host '192.168.1.3' is not allowed to connect to this MySQL server  
以下是引用内容:
ERROR 1130: Host '192.168.1.3' is not allowed to connect to this MySQL server

 

解决方法:
1。 改表法。

可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"

Java代码

  1. mysql -u root -p   
  2. mysql>use mysql;   
  3. mysql>update user set host = '%' where user = 'root';   
  4. mysql>select host, user from user;  
mysql -u root -p
mysql>use mysql;
mysql>update user set host = '%' where user = 'root';
mysql>select host, user from user;
 
 

2. 授权法。

例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。

Sql代码

  1. GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

 如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码

Sql代码

  1. GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

 

时间: 2024-08-04 01:55:59

MysqL的root用户不允许远程连接的相关文章

CentOS6.3安装MySQL5.6.10并修改MySQL的root用户密码

环境:CentOS 6.3 最小化缺省安装,配置好网卡. 安装MySQL前,确认Internet连接正常,以便下载安装文件. 先使用 yum -y update 指令升级系统到最新版本. 本安装将MySQL的数据文件与执行文件分离,如果你打算设置到不同的路径,注意修改对应的执行命令和数据库初始化脚本. # 修改防火墙设置,打开3306端口 vi /etc/sysconfig/iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport

CentOS 6.5 安装 MySQL 5.6.17 并修改MySQL的root用户密码

单机搭建CentOS-6.5安装MySQL 5.6.17并修改MySQL的root用户密码 Mysql 5.5以后使用了CMake进行安装,参考与以前的区别请参考: http://www.blogjava.net/kelly859/archive/2012/09/04/387005.html   接上文. 1:下载:当前mysql版本到了5.6.17 wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.17.tar.gz 2:必

修改mysql的root用户密码为空

公司的BBS使用的mysql数据库,每一次服务器重启都要手工启动mysql数据库. 很是纠结,今天使用一个精简版的mysql数据库.把目前BBS数据库进行迁移,迁移完毕后.发现原来这个mysql数据库不只是BBS使用.还有一个web应用使用的也是该数据库,但是该web应用使用mysql的root用户居然不能有密码的,坑爹啊! 木有办法只能修改目前的mysql数据库的root用户密码为空. 因为目前这个精简的mysql数据库的root用户密码为123456.查看了相关的资料,基本上如下: cmd下

使用phpMyAdmin修改MySQL数据库root用户密码的方法

  这篇文章主要介绍了使用phpMyAdmin修改MySQL数据库root用户密码的方法,需要的朋友可以参考下 点击顶部的"SQL"标签进入sql命令输入界面.输入以下命令: 代码如下:update mysql.user set password=PASSWORD('jb51$123456') where user='root'; 然后点击右下角的"执行",没有报错就表示修改成功. 另外需要注意的是,如果你修改了root密码之后我们的phpMyAdmin的配置文件中

mysql误删root用户或者忘记root密码解决方法_Mysql

解决方法一: 到其他安装了Mysql的服务器(前提是要知道该服务器上Mysql的root用户密码),打开[Mysql的安装目录/var/mysql],将其中的user.frm.user.MYD.user.MYI三个文件拷贝到出问题服务器的[Mysql的安装目录/var/mysql]目录中.然后重启服务器. 解决方法二: 修改你的my.ini或my.cnf文件,在 [mysqld] 节下加入下面一行 skip-grant-tables 然后保存并重启 MySQL 服务. 下面你就可以以任何用户名密

mysql开启root用户可远程登录方法

开启 MySQL 的远程登陆帐号有两大步: 1.确定服务器上的防火墙没有阻止 3306 端口. MySQL 默认的端口是 3306 ,需要确定防火墙没有阻止 3306 端口,否则远程是无法通过 3306 端口连接到 MySQL 的. 如果您在安装 MySQL 时指定了其他端口,请在防火墙中开启您指定的 MySQL 使用的端口号. 如果不知道怎样设置您的服务器上的防火墙,请向您的服务器管理员咨询. 2.增加允许远程连接 MySQL 用户并授权. 1)首先以 root 帐户登陆 MySQL 在 Wi

如何修改遗失的MySQL的ROOT用户密码

如果忘记了 MySQL 的 root 密码,可以用以下方法重新设置: 1. KILL掉系统里的MySQL进程: 2. 用以下命令启动MySQL,以不检查权限的方式启动: mysqld_safe -skip-grant-tables & 3. 然后用空密码方式使用root用户登录 MySQL: mysql -u root 4. 修改root用户的密码: mysql> update mysql.user set password=PASSWORD('新密码') where User='root'

如何重设MYSQL数据库ROOT用户的密码

一.在已知MYSQL数据库的ROOT用户密码的情况下,修改密码的方法: 1.在SHELL环境下,使用mysqladmin命令设置:mysqladmin –u root –p password "新密码"   回车后要求输入旧密码 2.在mysql>环境中,使用update命令,直接更新mysql库user表的数据: Update mysql.user  set  password=password('新密码')  where  user='root'; flush   privi

如何修改mysql中root用户的密码

此环境测试为Linux系统,对于Windows系统,可直接进入到myql的命令行模式进行操作 通过命令行登录管理MySQL服务器(提示输入密码时直接回车): 第一步,登陆mysql [root@localhost bin]# /usr/local/webserver/mysql/bin/http://www.aliyun.com/zixun/aggregation/33.html">mysql -u root -p -S /tmp/mysql.sockEnter password: Wel