我想以类似于使用SmallSQL访问的方式访问本地MySQL文件。 例如
String driver = "smallsql.server.SSDriver";
String url = "jdbc:smallsql:C:\\Users\\user\\Desktop\\SQuirreL\\db";
Class.forName(driver).newInstance();
conn = DriverManager.getConnection(url);
System.out.println("Connected to smallSQL database");
正如您所看到的,我可以将我的db文件夹移动到本地计算机上的任何位置,而我所要做的就是提及要与之连接的db文件夹的路径。在mysql中类似的实现,如下所示:
try
{
Class.forName("com.mysql.jdbc.Driver").newInstance();
conn = DriverManager.getConnection(jdbc:mysql://localhost:3306/db?characterEncoding=UTF8&user=root&password=#$%^";);
System.out.println("Connected to MySQL database");
}
所以我想知道有没有类似的方法来处理MySQL数据库,就像我们可以用SmallSQL做的那样,它们存储在$ path_to_myql / mysql / data / db中?
由于
答案 0 :(得分:1)
根据documentation,本地套接字连接仅适用于Unix系统(不适用于Windows)。
更重要的是,您必须意识到SmallSQL与SQLite非常相似,因为它的整个数据库引擎只是一个由您的进程链接的库,这就是您可以直接在磁盘上打开和访问数据库的原因。
另一方面,MySQL运行完全专用的服务器守护程序,该守护程序为多个客户端提供服务,并完全控制其内部数据库文件。它可以在同一台物理计算机上运行,也可以在远程主机上运行,您无法告诉它数据文件的位置。长话短说 - 你应该忍受它。 MySQL更复杂,但也比SmallSQL或SQLite快得多。