MySQL:在不同机器上开发时的数据位置

MySQL:在不同机器上开发时的数据位置,mysql,Mysql,刚刚安装了MySQL,我想将其用于研究软件开发,我面临一个问题:我应该将数据文件存储在哪里 我有三台计算机(家庭、工作、笔记本电脑),它们都有一个开发环境(Java/Eclipse),我希望所有这些计算机都能够访问数据库 如果我只有一台机器,那就不用动脑筋了,我只需要使用localhost 我无法决定数据文件的最佳位置。我正在考虑的选择(但很高兴听到其他观点)是: 1) 只需存储在本地机器上,让Dropbox负责同步数据。 数据可能会变得相当大,并超过至少一台计算机上的存储容量,而且同步可能需要

刚刚安装了MySQL,我想将其用于研究软件开发,我面临一个问题:我应该将数据文件存储在哪里

我有三台计算机(家庭、工作、笔记本电脑),它们都有一个开发环境(Java/Eclipse),我希望所有这些计算机都能够访问数据库

如果我只有一台机器,那就不用动脑筋了,我只需要使用localhost

我无法决定数据文件的最佳位置。我正在考虑的选择(但很高兴听到其他观点)是:

1) 只需存储在本地机器上,让Dropbox负责同步数据。 数据可能会变得相当大,并超过至少一台计算机上的存储容量,而且同步可能需要很长时间

2) 使用网络存储设备(我有一个Synology单元)

3) 我有我自己的域名注册,所以我可以使用它

4) 使用基于云的服务。 不知道这些是如何工作的,成本和备份选项

综上所述,除非我使用localhost,否则如果我必须“通过互联网”访问,我会担心访问时间,特别是如果我大量使用SQL查询/更新

我还担心备份数据库以防需要恢复

你可能会问我为什么要使用mySQL?在未来,我可能想做一个PHP的推出和MySQL似乎是一条路要走

先走一步


G/P>< P>也许考虑每个机器上的本地安装,但是考虑MySQL复制。这样,若你们的笔记本电脑并没有互联网服务,你们仍然可以使用本地数据,即使它可能有点过时


复制还可以解决备份问题。

我不确定应用程序的大小。如果它很大,你可以使用一个独立的数据库服务器,或者使用你的一台计算机作为存储数据的地方(使用磁盘和内存最大的一台)

我认为您想知道如何在不同的计算机中访问数据,实际上不必担心,因为它总是使用数据库连接器,并且在应用程序中定义了IP/端口。如果您使用Java/Eclipse,则应该使用JDBC访问数据库

例如,JDBC设置如下所示

Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/myuser", "root", "root"); // please replace localhost and 3306 with IP and port of your database
String sql = "select * from yourtable"; // your query
Statement st = (Statement)conn.createStatement();
st.executeQuery(sql);

泰。我需要看看这实际上意味着什么,但这听起来是一个很好的解决方案。我猜MySQL有某种形式的复制/同步;那太好了@格雷厄姆:是的,没错。这个功能已经有很长一段时间了,所以网上应该有很多关于如何设置它的信息。非常有用。谢谢我有很多东西要学,但这给了我一个很好的开始。一个问题是数据库可能是一台家庭计算机,没有固定的IP地址。我认为有办法分配一个静态IP,但我需要进入路由器才能做到这一点。当然,也许有些方法我不确定,但如果你有接口,至少在另一台计算机上访问数据库并不困难。