无法使用SQuirreL连接到MySQL数据库

时间:2014-04-05 23:34:30

标签: mysql squirrel-sql

使用客户端Squirrel SQL连接MySQL时遇到问题。我之前设法连接到Oracle和Derby,但这一次,我不知道我做错了什么。

我在Mac上安装了MySQL,遵循以下步骤:

  1. 安装MySQL:

    ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"
    brew install git
    brew update
    brew install mysql
    
  2. 确保安装:

    mysql.server start
    mysql_secure_installation
    mysql.server stop
    
  3. 创建新数据库:

    mysql.server start
    mysql -uroot -pmypassord
    create database mydb;
    show databases;
    
  4. 要知道数据库的存储位置:

    mysql.server start
    mysql -uroot -pmypassword
    SELECT @@datadir, @@innodb_data_home_dir
    
  5. 创建表格

    use mydb;
    create table tblemployee (
        employeeID  int not null,
        firstname   varchar(50),
        lastname    varchar(50),
        titleID     int,
        salary      float,
        primary key (employeeID)
    );
    
  6. 我按照以下步骤操作后:

    • 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 个答案:

答案 0 :(得分:3)

检查您的jdbc连接网址,这似乎无效:   'JDBC:MySQL的:在/ usr /本地的/ var / MySQL的/ MYDB'

Jdbc网址类似于'jdbc:mysql:/ database',所以应该是这样的:   'JDBC:MySQL的:本地主机/ MYDB'

答案 1 :(得分:-2)

安装MySQL并创建数据库后,必须转到SQL SQuirrel。

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

  • 转到“驱动程序”(屏幕左侧)标签。
  • 辅助点击“MySQL Driver”。
  • 点击“更改”。

它会打开一个对话框:

  • 名称:您要为驱动程序提供的名称(保留原样)。
  • 示例网址: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”给OK,你将准备好驱动程序。现在,添加一个新的Alias。

转到此标签,然后点击添加按钮(蓝十字):

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

最后,您点击“确定”按钮并准备就绪。

我希望你的解释清楚。

问候。