MySQL的默认配置root帐户只能在本地登录。远程登录会出现如下提示:
1103 - host xxx.xxx.xxx.xx is not allowed to connec to this mysql server.
或
1045 - Access denied for user 'root'@'10.163.225.155' (using password: YES).
原因是MySQL指定了某个账户只能在某个地方登录服务器;例如:root@192.168.1.155 表示账户 root 只能在IP地址为 19.168.1.155 的机器上登录MySQL服务器。
解决办法有两种:
1)修改root账户可在某地址登录(地址可以是IP地址、机器名、域名、%表示任何地址)来解决问题;在本地运行Command Line Client,已root身份登录执行命令:
mysql>use mysql;
mysql>update user set host='%' where user='root';
mysql>flush privileges; -- 刷新MySQL的系统权限相关表;
到这里已经完成了,如果还是登录不了的话就尝试重启下MySQL;
2)创建一个账户使其能远程登录;在本地运行Command Line Client,已root身份登录执行命令:
mysql> grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by ‘连接口令’;
权限1,权限2,…权限n代表select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限。
当权限部分被 all privileges 或者 all 代替,表示赋予用户全部权限。
当数据库名称.表名称被*.*代替,表示赋予用户操作服务器上所有数据库所有表的权限。
用户地址可以是localhost,也可以是ip地址、机器名字、域名。也可以用’%'表示从任何地址连接。
‘连接口令’不能为空,否则创建失败。
mysql>grant select,insert,update,delete,create,drop on vtdc.employee to joe@10.163.225.87 identified by ‘123′;
给来自10.163.225.87的用户joe分配可对数据库vtdc的employee表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为123。如果没有joe用户就会自动创建他。
mysql>grant all privileges on vtdc.* to joe@10.163.225.87 identified by ‘123′;
给来自10.163.225.87的用户joe分配可对数据库vtdc所有表进行所有操作的权限,并设定口令为123。
mysql>grant all privileges on *.* to joe@10.163.225.87 identified by ‘123′;
给来自10.163.225.87的用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。
mysql>grant all privileges on *.* to joe@localhost identified by ‘123′;
给本机用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。
参考地址1:http://blog.csdn.net/wengyupeng/article/details/3290415
参考地址2:http://hi.baidu.com/ferri_qing/blog/item/d0f2ddd82772952411df9bb4.html
原文地址:http://hi.baidu.com/jpwei/item/5632932cddf12e0d73863e75
相关推荐
【MySQL数据库远程连接教程】 MySQL是一种广泛使用的开源关系型...在学习过程中,你可以参考更多的教程,如“Linux中的MySql数据库远程连接教程”和“怎么备份远程mysql数据库的脚本文件”,以深化你的MySQL知识。
理解这些基本概念和操作,能帮助你在Linux环境中有效地管理和维护MySQL数据库,实现远程连接和数据管理。如果你需要进一步学习,可以关注相关的Linux MySQL远程连接教程,以及数据库备份和脚本文件的编写方法。
Linux 下 MySQL 数据库远程连接操作详解 Linux 下 MySQL 数据库远程连接操作是指在...本文详细介绍了 Linux 下 MySQL 数据库远程连接操作的步骤、设置密码的方式、解决权限问题的方法等,为用户提供了实用的参考指南。
通过以上步骤,非 Root 用户就可以成功安装和配置 Mysql 数据库在 Linux 操作系统中。需要注意的是,在实际操作中需要根据实际情况调整权限和配置。 Linux 系统中 Mysql 的安装和配置需要注意以下几点: * 权限...
以下是解决不能进行远程连接 MySQL 数据库的问题的方法,这些方法同样适用于没有使用 YUM 命令安装的用户。 首先,需要使用 yum 命令安装 MySQL 服务器。使用以下命令安装 MySQL 服务器: yum -y install mysql-...
`切换到mysql数据库,然后更新`user`表,找到`root`用户,确保其`Host`字段为`%`,表示任何主机都可以连接。如果没有,可以执行`UPDATE user SET Host = '%' WHERE User = 'root';` 3. **授权远程访问**:执行`GRANT...
默认情况下,MySQL数据库的root用户仅允许本地访问,不允许远程连接。以下是一个详细的方法教程,教你如何在Linux环境下开启MySQL的远程连接功能。 1. **在服务器端开启远程访问** 首先,你需要登录到你的Linux...
在Linux环境下,使用Java连接MySQL数据库是常见的任务,主要涉及Java编程、数据库连接技术以及Linux操作。本篇文章将深入探讨如何在Linux系统中利用Java的JDBC(Java Database Connectivity)接口来实现与MySQL...
在Linux系统中,连接MySQL数据库通常涉及几个关键知识点,包括MySQL服务器的安装与配置、Java环境的搭建、数据库客户端工具的使用以及编程语言(如Java)的数据库连接API。这里我们将详细探讨这些方面。 首先,...
说明:当别的机子(IP )通过客户端的方式在没有授权的情况下是无法连接 MySQL 数据库的,如果需要远程连接 Linux 系统上的 MySQL 时,必须为其 IP 和 具体用户 进行 授权 。一般 root 用户不会提供给开发者。如:...
然而,在实际工作中,有时我们需要通过远程方式来管理和操作MySQL数据库,这就涉及到如何在Linux环境下开启MySQL的远程连接功能。 #### 二、开启远程连接的必要性 在某些特殊情况下,如运维人员不在服务器所在地,...
当服务器上的root用户的MySQL密码过期时,会导致无法正常连接到数据库,这通常是由于系统安全性策略设置的结果。解决这个问题需要一些基本的Linux和MySQL管理知识。以下是一个详细的步骤指南,来帮助你解决这个问题...
在本篇文章中,我们将学习如何在 Linux 系统上安装和配置 MySQL 数据库,包括安装 MySQL 软件包、配置 MySQL 服务器、设置 root 用户密码、配置远程登录、开放防火墙端口等步骤。 安装 MySQL 软件包 首先,我们...
### 如何在Linux下实现MySQL数据库每天自动备份 在Linux环境下进行MySQL数据库的日常自动备份是一项重要的维护工作,它能够确保数据的安全性与完整性。本文将详细介绍如何通过编写Shell脚本并结合Cron定时任务来...
在MySQL数据库管理中,远程访问连接允许用户从不同的计算机或网络位置访问数据库,这对于多用户协作、...通过遵循上述步骤并确保安全性,你可以让指定的IP地址访问远程MySQL数据库,从而实现更灵活的数据库管理与协作。
以上就是Linux环境下MySQL数据库操作的一些基本知识点,包括如何连接数据库、修改密码、添加用户、显示数据、创建/删除数据库和表、数据表的操作以及数据库的备份与恢复等内容。这些命令可以帮助用户高效地管理和...
在Linux系统中,MySQL数据库默认并不允许远程连接。要实现MySQL 5.6版本的远程连接,你需要进行一系列的配置步骤。以下是一个详细的教程来帮助你实现这一目标: 1. **登录MySQL数据库**: 首先,你需要以root用户...
3. **Linux中的MySql数据库远程连接教程**:可能包含更详细的系统环境配置和故障排查指南。 4. **解决MySQL不同意远程连接的错误**:主要关注权限问题、防火墙配置和配置文件的正确性。 总之,允许MySQL远程连接是...