我正在尝试连接Netbeans中的MySQL数据库,并在第一步 - 连接数据库时停留。我的数据库在控制台上工作正常 - 尝试命令mysqladmin -u root -p ping,它说mysql id是活着的。我甚至从控制台创建了数据库。现在当我在Netbeans中注册它
Server Host Name:localhost
Server Port:3306
Admin user : root
Admin password :<the password which works on console>
和管理员属性:
Path to admin tool: C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqladmin.exe
Argument : <blank>
Path to start command:C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqld.exe
Argument : --console <as suggested in http://forums.netbeans.org/topic12767.html>
Path to stop command:C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqladmin.exe
Argument : -u root shutdown
但我仍然得到消息: - “本地主机上的MySQL服务器:3306 [root](断开连接)”
如果我右键单击并选择“开始”或“连接”我在任务栏中收到消息 - 等待MYSQL服务器启动...无限时间。
任何帮助我在这里做错了什么???
请遵循以下两个步骤:
使用“服务”选项卡执行以下步骤:
自定义New Connection如下:
localhost
3306
mysql
(mysql是默认值或输入您的数据库名称)jdbc:mysql://localhost:3306/mysql
注意:删除URL中的?zeroDateTimeBehaviour=convertToNull
部分。而不是URL中的mysql
,您应该看到您的数据库名称)
MySQL Server at localhost:3306:[username](...)
在“MySQL服务器属性”对话框中,选择“管理员属性”选项卡在指定的文本框中输入以下内容:
对于Linux用户:
/usr/bin/mysql
/etc/init.d/mysql start
/usr/bin/mysql
/etc/init.d/mysql stop
对于MS Windows用户:
注意:可选:
在“管理工具的路径/ URL”字段中,键入或浏览到MySQL管理应用程序的位置,例如MySQL管理工具,PhpMyAdmin或其他基于Web的管理工具。
注意:mysqladmin是MySQL安装目录的bin文件夹中的MySQL管理工具。它是一个命令行工具,不适合与IDE一起使用。
我们将在此示例中使用MySQL Workbench。如果您有MySQL工作台和MySQL的路径,请使用您的安装路径。
C:\Program Files\MySQL\MySQL Workbench CE 5.2.47\MySQLWorkbench.exe
C:\mysql\bin\mysqld
(OR C:\mysql\bin\mysqld.exe
)C:\mysql\bin\mysqladmin
(OR C:\mysql\bin\mysqladmin.exe
)-u root shutdown
(试试-u root stop
)Windows用户的MySQL bin文件夹位置的可能示例:
C:\mysql\bin
C:\Program Files\MySQL\MySQL Server 5.1\bin\
~\xampp\mysql\bin
所有的拳头确保您的SQL服务器正在运行。实际上我正在使用Windows,我已经安装了一个名为MySQL workbench的漂亮工具(你几乎可以在任何平台上找到here)。
因此,我只创建一个新的数据库来测试连接,让我们称之为stackoverflow,使用一个名为user的表。
SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';
DROP SCHEMA IF EXISTS `stackoverflow` ;
CREATE SCHEMA IF NOT EXISTS `stackoverflow` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci ;
USE `stackoverflow` ;
-- -----------------------------------------------------
-- Table `stackoverflow`.`user`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `stackoverflow`.`user` ;
CREATE TABLE IF NOT EXISTS `stackoverflow`.`user` (
`iduser` INT NOT NULL AUTO_INCREMENT,
`name` VARCHAR(75) NOT NULL,
`email` VARCHAR(150) NOT NULL,
PRIMARY KEY (`iduser`),
UNIQUE INDEX `iduser_UNIQUE` (`iduser` ASC),
UNIQUE INDEX `email_UNIQUE` (`email` ASC))
ENGINE = InnoDB;
SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
你可以减少重要的部分
CREATE SCHEMA IF NOT EXISTS `stackoverflow`
CREATE TABLE IF NOT EXISTS `stackoverflow`.`user` (
`iduser` INT NOT NULL AUTO_INCREMENT,
`name` VARCHAR(75) NOT NULL,
`email` VARCHAR(150) NOT NULL,
PRIMARY KEY (`iduser`),
UNIQUE INDEX `iduser_UNIQUE` (`iduser` ASC),
UNIQUE INDEX `email_UNIQUE` (`email` ASC))
所以现在我有了全新的stackoverflow数据库。让我们通过Netbeans连接它。启动netbeans并转到服务面板现在右键单击数据库:新连接..选择MySql连接器,它们已经包含netbeans。然后填补所需数据的空白。如图所示,添加数据库名称并从连接url中删除可选参数l?zeroDateTimeBehaviour=convertToNull
。使用正确的用户名和密码并测试连接。
如您所见,连接成功。
单击“完成”。
您将使您的连接成功运行并在服务下可用。
检查网页中的context.xml
文件 - > META-INF,username="user"
必须和数据库用户一样,在我的情况下是root,解决了连接错误
希望有所帮助
在我的情况下,我在WEB-INF下的glassfish-recources.xml中找到了我的密码
如果仍然没有连接,请下载MySQL Connector/J并将mysql-connector-java- [version] .jar添加到您的类路径以及您的Web服务器的lib目录中。例如,XAMPP中的Tomcat lib路径是 C:\ XAMPP \ tomcat的\ lib中。 然后再次重复这些步骤。