如何在weka中连接数据库

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 如何在weka中连接数据库
相关准备:

jdk-1_6_0_22
weka-3-6-3.exe
mysql-5.0
MySQL Driver for JDBC--->mysql-connector-java-5.1.6-bin.jar

1、进入weka的安装目录
  • 1)新建文件夹lib和文件夹weka,然后将mysql-connector-java-5.1.6-bin.jar复制到lib文件夹中
  • 2)“我的电脑”属性,设置环境变量

    新建变量WEKA_HOME=weka的安装目录,如(D:Prgramsweka-3.6)

   在CLASSPATH变量中添加“;%WEKA_HOME%libmysql-connector-java-5.1.6-bin.jar”

  • 3)将weka.jar解压到weka文件夹(新建)中,然后进入wekaexperiment,找到DatabaseUtils.props(缺省使用)将其重新命名备份;假设我们要连接的mysql数据库,则将DatabaseUtils.props.mysql重新命名为DatabaseUtils.props,然后做如下修改:
# JDBC driver (comma-separated list)
#jdbcDriver=org.gjt.mm.mysql.Driver 修改为:jdbcDriver=com.mysql.jdbc.Driver  
# database URL,保持不变
jdbcURL=jdbc:mysql://server_name:3306/database_name 

# specific data types,具体的数据类型修改如下,主要是去掉注释 string, getString() = 0;    --> nominal
boolean, getBoolean() = 1;  --> nominal
double, getDouble() = 2;    --> numeric
byte, getByte() = 3;        --> numeric
short, getByte()= 4;        --> numeric
int, getInteger() = 5;      --> numeric
long, getLong() = 6;        --> numeric
float, getFloat() = 7;      --> numeric
date, getDate() = 8;        --> date
text, getString() = 9;      --> string
time, getTime() = 10;       --> date
BigDecimal,getBigDecimal()=11;   -->nominal  

#mysql-conversion  --类型转换,做如下补充 TINYINT=3
SMALLINT=4
SHORT=5
INTEGER=5
INT=5
INT_UNSIGNED=6
BIGINT=6
LONG=6
REAL=7
NUMERIC=2
DECIMAL=2
FLOAT=2
DOUBLE=2
CHAR=0
TEXT=0
VARCHAR=0
LONGVARCHAR=9
BINARY=0
VARBINARY=0
LONGVARBINARY=9
BIT=1
BLOB=8
DATE=8
TIME=8
DATETIME=8
TIMESTAMP=8

  其他的暂时无需修改,保存

  • 4)对weka重新打包,替换原来的weka.jar(最好改名备份),进入命令行

     cd weka安装目录weka

     jar cvf weka.jar weka*.*

这样就完成weka.jar的重新生成,进入安装目录weka,便可看到新生成的weka.jar,将其复制替换安装目录下原来的weka.jar

网上的很多文章到这一步就去运行weka,我也试了一下发现没有办法找到jdbc.driver,没办法连接上数据库。结果我再查资料,再做如下的操作,就可以正常连接了。

  • 5)将刚刚修改的DatabaseUtils.props文件,复制到weka的安装目录下
  • 6)打开runWeka.ini文件,到文件尾部
\# The classpath placeholder. Add any environment variables or jars to it that
\# you need for your Weka environment.
\# Example with an enviroment variable (e.g., THIRD_PARTY_LIBS):
\#   cp=%CLASSPATH%;%THIRD_PARTY_LIBS%
\# Example with an extra jar (located at D:\libraries\libsvm.jar):
\#   cp=%CLASSPATH%;D:\\\\libraries\\\\libsvm.jar
\# Or in order to avoid quadrupled backslashes, you can also use slashes "/":
\#  cp=%CLASSPATH%;D:/libraries/libsvm.jar

修改为(添加driver的文件路径):cp=%CLASSPATH%;D:/Programs/Weka-3.6/lib/mysql-connector-java-5.1.6-bin.jar #cp=%CLASSPATH%

2、运行weka,进入explorer -->open DB

在URL框中输入:jdbc:mysql://localhost:3306/mysql    (localhost是服务器名称,最后的mysql是要访问的数据库名,自行修改,确保要访问的数据库存在)

点击user: 输入用户名和密码后,点击connect,

如果在下面的info框中,显示connecting to: jdbc:mysql://localhost:3306/mysql = true,则连接成功;否则失败。
可以在query框中输入sql语句,点击excute执行。

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
1月前
|
存储 Go API
使用GoFrame连接和操作TDengine时序数据库
通过使用GoFrame框架和TDengine Go驱动,我们可以方便地连接和操作TDengine时序数据库。无论是插入、查询还是分析时序数据,都可以通过简单的API调用来实现。GoFrame提供了强大的Web开发功能,结合TDengine的高性能时序数据存储和查询能力,可以构建高效、可扩展的时序数据应用。
|
1月前
|
NoSQL 关系型数据库 PHP
php连接数据库
要使用PHP连接PolarDB或MongoDB数据库,需先准备连接信息,并编写相应代码。对于PolarDB,需设置主机地址、端口、数据库名及凭据,使用`pg_connect`函数建立连接;而对于MongoDB副本集,需安装MongoDB PHP驱动,通过`MongoDB\Client`连接指定的副本集实例。请确保替换示例代码中的占位符为实际值,并正确配置副本集名称和主机信息。更多详细信息与示例代码,请参考相关链接。
137 72
|
3天前
|
Java 关系型数据库 MySQL
如何用java的虚拟线程连接数据库
本文介绍了如何使用Java虚拟线程连接数据库,包括设置JDK版本、创建虚拟线程的方法和使用虚拟线程连接MySQL数据库的示例代码。
17 6
如何用java的虚拟线程连接数据库
|
2天前
|
数据库连接 网络安全 数据库
数据库网站连接错误怎么办?
数据库网站连接错误怎么办?
|
2天前
|
应用服务中间件 数据库连接 网络安全
网站连接数据库配置错误
网站连接数据库配置错误
|
3天前
|
Java 关系型数据库 MySQL
数据库的连接用Java
本文介绍了如何使用Java连接MySQL数据库,包括注册JDBC驱动、创建数据库连接URL、设置数据库用户和密码、建立连接以及关闭连接的完整代码示例。
8 0
数据库的连接用Java
|
16天前
|
关系型数据库 MySQL 数据库
6-2|测试连接数据库的命令
6-2|测试连接数据库的命令
|
16天前
|
SQL 关系型数据库 MySQL
ThinkPHP6 连接使用数据库,增删改查,find,select,save,insert,insertAll,insertGetId,delete,update方法的用法
本文介绍了在ThinkPHP6框架中如何连接和使用数据库进行增删改查操作。内容包括配置数据库连接信息、使用Db类进行原生MySQL查询、find方法查询单个数据、select方法查询数据集、save方法添加数据、insertAll方法批量添加数据、insertGetId方法添加数据并返回自增主键、delete方法删除数据和update方法更新数据。此外,还说明了如何通过数据库配置文件进行数据库连接信息的配置,并强调了在使用Db类时需要先将其引入。
ThinkPHP6 连接使用数据库,增删改查,find,select,save,insert,insertAll,insertGetId,delete,update方法的用法
|
16天前
|
SQL 关系型数据库 数据库连接
php连接数据库之PDO,PDO的简单使用和预定义占位符的使用以及PDOStatement对象的使用,占位符的不同形式,bindValue和bindParam绑定预定义占位符参数的区别
本文介绍了PHP中PDO(PHP Data Objects)扩展的基本概念和使用方法。内容包括PDO类和PDOStatement类的介绍,PDO的简单使用,预定义占位符的使用方法,以及PDOStatement对象的使用。文章还讨论了绑定预定义占位符参数的不同形式,即bindValue和bindParam的区别。通过具体示例,展示了如何使用PDO进行数据库连接、数据查询、数据插入等操作。
php连接数据库之PDO,PDO的简单使用和预定义占位符的使用以及PDOStatement对象的使用,占位符的不同形式,bindValue和bindParam绑定预定义占位符参数的区别
|
16天前
|
SQL 关系型数据库 MySQL
php学习笔记-连接操作mysq数据库(基础)-day08
本文介绍了PHP中连接操作MySQL数据库的常用函数,包括连接服务器、设置字符集、关闭连接、选择数据库、结果集释放、获取影响行数以及遍历结果集等操作。通过书籍查询的实例演示了如何使用这些函数进行数据库操作,并提供了一个PHP操纵MySQL数据库的模板。
php学习笔记-连接操作mysq数据库(基础)-day08

热门文章

最新文章