.MDF数据库的UnixODBC驱动程序问题。或者:有没有一种方法可以在没有sql server的情况下轻松提取一组表?
免责声明:说到数据库编程,我有点像n00b,所以请容忍我 我一直在尝试批处理.MDF SQL数据库文件中包含的大量数据(约20 gb)。这些文件包含通过气象气球获得的气象数据,每个表格包含约1秒的风、压力、高度、温度等观测值,并使用我们的无线电探空仪跟踪软件在未联网的Windows机器上创建。使用相关软件加载文件并将表格导出为ASCII文本文件是可能的(而且非常容易),但是,此过程需要手动加载每个表格。由于我正在进行一项需要尽可能多的探测的研究(我们有2000多个),因此在几年内反复进行这一过程,每天两次的观测是非常耗时的 我一直在把电脑上的文件放在我的笔记本电脑上运行Linux MINT,并认为自己对Perl很流利……我用Perl脚本进行我的大部分数据分析。也就是说,我花了最宝贵的时间试图进入数据库文件 我已经尝试使用DBI包连接到其中一个文件,该包在.MDF数据库的UnixODBC驱动程序问题。或者:有没有一种方法可以在没有sql server的情况下轻松提取一组表?,sql,linux,database,windows,perl,Sql,Linux,Database,Windows,Perl,免责声明:说到数据库编程,我有点像n00b,所以请容忍我 我一直在尝试批处理.MDF SQL数据库文件中包含的大量数据(约20 gb)。这些文件包含通过气象气球获得的气象数据,每个表格包含约1秒的风、压力、高度、温度等观测值,并使用我们的无线电探空仪跟踪软件在未联网的Windows机器上创建。使用相关软件加载文件并将表格导出为ASCII文本文件是可能的(而且非常容易),但是,此过程需要手动加载每个表格。由于我正在进行一项需要尽可能多的探测的研究(我们有2000多个),因此在几年内反复进行这一过程
$dbh = DBI->connect("DBI:ODBC:$filename") or die "blahblahblah";
我已经安装并配置了unixODBC,已经下载了“libmyodbc.so”和“libodbcmyS.so”,并且不断得到错误信息
DBI连接(“”,,…)失败:[unixODBC][Driver Manager]未找到数据源名称,并且在dumpsql.pl第6行未指定默认驱动程序(SQL-IM002)
在过去的几天里,我尝试了很多方法来弥补这个问题,为了简洁起见,我不会在这里发布它们。我的odbcinst.ini文件如下:
[MySQL]
Description = ODBC for MySQL
Driver = /usr/lib/x86_64-linux-gnu/odbc/libmyodbc.so
Setup = /usr/sib/x86_64-linux-gnu/odbc/libodbcmyS.so
FileUsage = 1
我很困惑。我想我正在做各种在线教程建议的一切,但是其他人都在连接服务器,这些文件都是本地的,并且在同一个目录中!有人能给我指出正确的方向吗?我只想用垂直探测数据计算气象值!我是不是遗漏了一些显而易见的东西
任何帮助都将不胜感激 原来的数据库服务器似乎是Microsoft SQL server(MDF文件)。恐怕这些文件在Linux机器上是无用的。您需要Windows计算机上的Microsoft SQL Server才能访问包含的数据 您描述了可以在SQL server上手动附加MDF文件,然后可以将所需数据导出为文本文件。试着让它自动化。我不是MS SQL Server专家,但这应该是可能的
这是一本书。因此,我的方法是编写一个脚本,迭代2000个MDF文件,并将每个文件附加到SQL server。然后执行一个查询以导出数据,然后分离MDF。我知道这已经过去几个月了,但我最终还是让它工作了:我在win7分区上使用PYODBC的方法完成了所有工作。所有的数据都被提取出来了,我能够完成我的研究!感谢您的及时回复,并为迟来的反馈感到抱歉。我想提高投票率,但我缺乏必要的声誉点数嘿,很高兴听到你成功了。