首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何访问和操作我在不同机器上的MySQL数据库

如何访问和操作我在不同机器上的MySQL数据库
EN

Stack Overflow用户
提问于 2018-01-19 09:46:33
回答 2查看 57关注 0票数 1

我已经创建了一个可以用Java轻松操作的Mysql数据库,

然而,我不能从其他机器访问它,因为它只在本地主机上运行,对吗?我该怎么做,这样我才能操作来自另一台机器的数据。或者我说的都错了?我尝试过在MySQL工作台上使用远程访问,但我就是不理解它。

这是我目前访问它的方式。

代码语言:javascript
复制
Connection myConn = DriverManager.getConnection(
    "jdbc:mysql://localhost:3306/sampledatabase"
);
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-01-19 10:38:38

当然你可以远程访问它!

首先,您必须了解什么是MySQL用户和身份验证机制。MySQL将'UserName'@'Host'视为可以访问MySQL服务器的真实用户。当您在本地访问它时,您使用的实际用户是'Me'@'localhost' (假设这里的用户名是'Me')。在MySQL服务器内部,必须有一个名为'Me'@'localhost' exist(或'Me'@'%')的用户。您还必须为'Me'@'localhost'提供正确的密码。

当你需要远程访问它时,你必须用远程ip地址替换localhost,这样你的应用程序才能正确创建TCP连接。假设MySQL服务器的ip地址为172.0.1.5,您的应用的ip地址为172.0.1.10。您现在使用的实际用户是'Me'@'172.0.1.10'。您必须确保MySQL服务器中确实存在用户'Me'@'172.0.1.10'。否则,您将遇到身份验证失败。

要检查所有用户,请执行以下操作:

代码语言:javascript
复制
select * from mysql.user;  // if you have the privilige to perform it

添加用户:Create User Syntax

票数 2
EN

Stack Overflow用户

发布于 2018-01-19 10:14:16

可以,您可以访问安装在其他机器上的数据库。您需要理解您提供的url。

代码语言:javascript
复制
jdbc:mysql://localhost:3306/sampledatabase

这里localhost指的是数据库服务器的主机名,指的是同一台机器或本地机器。如果您正在尝试访问驻留在其他计算机上的其他数据库服务器,那么您需要将localhost替换为remote-machine-hostname或它的ip-address

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48332987

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档