2

我想以类似的方式访问本地 MySQL 文件,可以使用 SmallSQL 访问它。例如。

    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 数据库,就像我们可以使用存储在 $path_to_myql/mysql/data/db 中的 SmallSQL 一样?

谢谢

4

1 回答 1

1

根据文档,本地套接字连接仅适用于 Unix 系统(不适用于 Windows)。

更重要的是,您必须意识到 SmallSQL 与 SQLite 非常相似,因为它的整个数据库引擎只是一个由您的进程链接的库,这就是您可以直接在磁盘上打开和访问数据库的原因。

另一方面,MySQL 运行完全专用的服务器守护程序,它服务于多个客户端并完全控制其内部数据库文件。它可以在同一台物理机或远程主机上运行,​​您无法告诉它您的数据文件在哪里。

长话短说 - 你应该忍受它。MySQL 更复杂,但运行速度也比 SmallSQL 或 SQLite 快得多。

于 2013-01-15T10:06:56.180 回答