无法使用SQuirreL连接MySQL数据库

5

我在使用Squirrel SQL客户端连接MySQL时遇到了问题。我之前成功连接过Oracle和Derby,但这一次似乎出了些问题。

我按照以下步骤在我的Mac上安装了MySQL:

  1. To install MySQL:

    ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"
    brew install git
    brew update
    brew install mysql
    
  2. To secure the installation:

    mysql.server start
    mysql_secure_installation
    mysql.server stop
    
  3. To create a new database:

    mysql.server start
    mysql -uroot -pmypassord
    create database mydb;
    show databases;
    
  4. To know where databases are stored:

    mysql.server start
    mysql -uroot -pmypassword
    SELECT @@datadir, @@innodb_data_home_dir
    
  5. To create a table

    use mydb;
    create table tblemployee (
        employeeID  int not null,
        firstname   varchar(50),
        lastname    varchar(50),
        titleID     int,
        salary      float,
        primary key (employeeID)
    );
    

在我按照以下步骤后:

  • MySQL已经安装在 /usr/local/Cellar/mysql/5.6.17 目录下
  • 数据库存储在 /usr/local/var/mysql/mydb 目录下
  • tblemployee 表已经成功创建。

接下来,在SQuirreL中,我安装了MySQL的驱动程序(mysql-connector-java-5.1.30-bin),并创建了一个别名,其中URL为 "jdbc:mysql:/usr/local/var/mysql/mydb",用户名为 "root" ,密码为 "mypassword"。

但是当我尝试连接时,我会收到以下错误消息:

打开 SQL 连接时发生意外错误。

当我点击 Stack Trace 时,我会得到以下信息:

java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.sql.SQLException: Unable to create connection. Check your URL.
    at java.util.concurrent.FutureTask.report(FutureTask.java:122)
    at java.util.concurrent.FutureTask.get(FutureTask.java:202)
    at net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand.awaitConnection(Unknown Source)
    at net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand.access$100(Unknown Source)
    at net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand$2.run(Unknown Source)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:744)
Caused by: java.lang.RuntimeException: java.sql.SQLException: Unable to create connection. Check your URL.
    at net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand.executeConnect(Unknown Source)
    at net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand.access$000(Unknown Source)
    at net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand$1.run(Unknown Source)
    ... 5 more
Caused by: java.sql.SQLException: Unable to create connection. Check your URL.
    at net.sourceforge.squirrel_sql.fw.sql.SQLDriverManager.getConnection(Unknown Source)
    ... 8 more

我做错了什么?

2个回答

4
请检查您的jdbc连接URL,它看起来是无效的:'jdbc:mysql:/usr/local/var/mysql/mydb'
Jdbc URL应该像'jdbc:mysql:/database'这样,因此应该如下:'jdbc:mysql:localhost/mydb'

3
URL 应该像这样:'jdbc:mysql://localhost/mydb'。 - oidualc
端口也应该被提及:jdbc:mysql://localhost:端口/mydb - CloseISQ

0

一旦您安装了MySQL并创建了数据库,您必须进入SQL SQuirrel。

在SQuirrel中,首先要做的是安装适当的驱动程序。对于MySQL:

  • 转到“Drivers”(屏幕左侧)选项卡。
  • 右键单击“MySQL Driver”。
  • 单击“更改”。

它将打开一个对话框:

  • 名称:您想要给驱动程序的名称(保留原样)。
  • 示例URL:jdbc:mysql://localhost/(数据库名称)
  • 网站:http://dev.mysql.com

转到“Extra Class Path”选项卡,并添加.jar MySQL连接器。您会在安装MySQL的文件夹中找到它。在我的情况下,它是“Program Files(x85)/MySQL/Connector.J 5.1 / mysql-connector-java-5.1.39-bin.jar”。点击确定,然后您就准备好了驱动程序。现在,添加新别名。

转到此选项卡,然后单击“添加”按钮(蓝色十字)。

  • 名称:您想要给别名的名称。
  • 驱动程序:MySQL驱动程序
  • URL:默认情况下,已配置驱动程序安装。
  • 用户名:root
  • 密码:mypassword

最后,您点击“确定”按钮即可完成设置。

希望我已经给出了足够清晰的解释。

祝好。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接