Questions tagged «import»

数据的导入是不同软件应用程序之间数据集的自动或半自动输入。

11
如何监视大.sql文件的导入进度?
我正在导入7 GB的空间foobar.sql以还原本地数据库中的表。 $ mysql -h localhost -u root 'my_data' < foobar.sql $ mysql --version /usr/local/mysql/bin/mysql Ver 14.12 Distrib 5.0.96, for apple-darwin9.8.0 (i386) using readline 5.1 如何监控进度?
204 mysql  mysqldump  import 


6
如何在MySQL中导入.sql文件?
我正在尝试使用MySQL Workbench导入.sql文件,但出现此错误: ERROR 1046 (3D000) at line 28: No database selected 我首先创建了一个空数据库,其名称与.sql文件相同,但不起作用。我还尝试使用以下命令通过mysql命令客户端执行此操作: mysqldump -u root database > file.sql 但是它说我的SQL语法有错误。此外,我不知道必须设置file.sql的路径。


7
将Oracle DMP文件导入到oracle的全新安装中
一个客户向我们发送了我们需要测试的Oracle数据库。我们不使用Oracle或没有任何内部Oracle专业知识。 我们需要设置数据库,以便我们可以连接到数据库并调试问题。 我重新安装了Oracle 9(客户端正在运行的版本)和管理工具。 为了我的一生,我无法获取它来导入数据。它不应该如此复杂。我一定弄错了。 我试过了: imp 'sys/password AS SYSDBA' file=c:\database.dmp full=yes log=implog.txt 并得到: Connected to: Personal Oracle9i Release 9.2.0.1.0 - Production With the Partitioning, OLAP and Oracle Data Mining options JServer Release 9.2.0.1.0 - Production Export file created by EXPORT:V09.02.00 via conventional path Warning: the objects were exported by …
29 oracle  import 

3
为什么“ LOAD DATA INFILE”比普通的INSERT语句快?
我读过一篇文章提到,通过使用该语句,可以从csv文件读取数据并将其插入数据库中,从而每秒可以完成60,000次插入LOAD DATA IN FILE。 为什么它与普通刀片不同? 编辑: 我通过只调用一条INSERT语句减少了往返行程: INSERT INTO tblname VALUES (NULL,2,'some text here0'),(NULL,2,'some text here1') ,(NULL,2,'some text here2'),(NULL,2,'some text here3') .....,(NULL,2,'some text here3000'); 那这个呢?
22 mysql  import  bulk 

4
为什么批量插入被认为是危险的?
此问题是从Information Security Stack Exchange 迁移的,因为可以在Database Administrators Stack Exchange上回答。 迁移 2年前。 我想了解为什么一般的网络安全团队(我处理过的一个以上的组织BULK INSERT)对于向应用程序和数据库程序员授予(例如TSQL)权限是一成不变的?我无法相信“填补磁盘滥用”的借口,除非我遗漏了一些东西,因为最终结果与执行类似操作的应用程序没有什么不同: for (long i = 0; i < LONG_MAX; ++i) executeSQL("INSERT INTO table VALUES(...)"); 并且INSERT是具有基本写权限的任何人都可以执行的常见DML命令。 为了使应用程序受益,BULK INSERT它效率更高,速度更快,并且使程序员无需解析SQL之外的文件。 编辑:我最初在信息安全站点上问这个问题是有原因的-不是DBA反对使用BULK INSERT,而是“信息保证”(IA简称-网络安全人员)正在迫使该问题。我让这个问题再讲一两天,但是如果批量操作确实确实绕过了约束或触发器,我可以看到这是一个问题。

2
将架构导入新的或不同的表空间
是否有一种简便的方法可以使用一个新的或不同于数据来源的表空间将模式导入Oracle 11gR2? 例如,我已经从OLDDB导出了BLOG_DATA,所有用户数据都存储在USERS表空间中。 在NEWDB上,我想导入BLOG_DATA模式,但是将用户对象存储在专门为此用户创建的BLOG_DATA表空间中。 我已经创建了BLOG_DATA用户,创建了BLOG_DATA表空间,并将其设置为该用户的默认表空间,并添加了适当的无限配额。 CREATE TABLESPACE blog_data DATAFILE SIZE 1G; CREATE USER blog_data IDENTIFIED BY secretpassword DEFAULT TABLESPACE blog_data QUOTA UNLIMITED ON blog_data; GRANT connect,resource TO blog_data 该模式是从OLDDB导出的,类似于 exp blog_data/secretpassword@OLDDB file=blog_data.dmp 在阅读了Phil的出色回答后,我发现自己很纳闷: 由于数据除了默认表空间(用户拥有配额的唯一表空间)外别无其他地方,这是否会有效地迫使imp将所有用户对象放在该默认表空间中? imp blog_data/secretpassword@NEWDB file=blog_data.dmp 然后,这会将整个blog_data模式放在NEWDB的blog_data表空间中吗?有什么原因为什么这行不通或者我会遇到某些对象等问题? 更新: 我进行了快速测试,发现情况确实如此。Imp将对象放置在该用户的默认表空间中,前提是该对象不能将其放置在原始表空间中(例如,该表空间不存在)。完整说明:http : //www.dolicapax.org/? p= 57 不过,我认为像Phil那样使用Data Pump可能是首选。

3
从带有标题的CSV文件创建表
我正在寻找一种仅基于指定CSV内容生成新MySQL表的方法。我将使用的CSV文件具有以下属性; “ |” 定界的。 第一行指定列名称(标题),也为“ |” 定界的。 列名和顺序不固定。 列数不固定。 文件很大(100万行/ 50列)。 在Excel中,这非常简单,但是对于MySQL来说似乎并非如此(谷歌不走运)。对我应该看的东西有什么建议吗?
12 mysql  csv  import  bulk 

1
以最少的停机时间重新导入大量数据的最佳方法
我每周大约需要导入约500,000条包含IP查找(只读参考)数据的记录(仅三个int / bigint cols)。 我真的不想担心将数据与现有表合并,我希望清除旧表并重新导入。 理想情况下,对数据运行的查询将继续运行(我们不会收到很多查询,可以接受的是,在导入期间它们的运行速度会稍慢一些,但需要提高24/7,所以运行此“时间不足”)。 到目前为止尝试过的事情 SSIS:我创建了一个SSIS包,该包会截断表并导入-运行大约需要30秒(实际上太长)。 临时表:导入到临时表中,进行截断和复制也大约需要30秒钟。 BCP:批量导入也相当慢(由于某种原因,它比SSIS慢(即使没有索引需要维护))-我猜想这与char-> int / bigint事务有关:/ 镜子表?所以,此刻,我想知道如何通过视图读取表,将数据导入到镜像表中以及更改视图以指向该表...这似乎会很快,但是看起来很小对我有点 这似乎应该是一个普遍的问题,但我找不到推荐的做法-任何想法将不胜感激! 谢谢

4
Oracle导入问题由不同的字符集引起
我正在尝试将Oracle 11导出导入Oracle 11 XE。 我收到以下消息: 在XE中导入fehlerhaft在WE8MSWIN1252字符集和AL16UTF16 NCHAR字符集中完成的 导入服务器使用AL32UTF8字符集(可能的字符集转换) 有什么想法,我如何将这个转储导入Oracle 11 XE? 编辑: 给定一张桌子 CREATE TABLE BDATA.Artikel( Key VARCHAR2(3) NOT NULL, Name VARCHAR2(60) NOT NULL, Abkuerzung VARCHAR2(5) NOT NULL ); 我收到这样的错误 IMP-00019: row rejected due to ORACLE error 12899 IMP-00003: ORACLE error 12899 encountered ORA-12899: value too large for column "BDATA"."ARTIKEL"."ABKUERZUNG" …
11 oracle  import 

3
InnoDB导入性能
我在批量导入一个由大约1000万行(或7GB)组成的相当大的InnoDB表时遇到了麻烦(对我来说,这是迄今为止我使用过的最大表)。 我做了一些研究来提高Inno的导入速度,目前我的设置如下所示: /etc/mysql/my.cnf/ [...] innodb_buffer_pool_size = 7446915072 # ~90% of memory innodb_read_io_threads = 64 innodb_write_io_threads = 64 innodb_io_capacity = 5000 innodb_thread_concurrency=0 innodb_doublewrite = 0 innodb_log_file_size = 1G log-bin = "" innodb_autoinc_lock_mode = 2 innodb_flush_method = O_DIRECT innodb_flush_log_at_trx_commit=2 innodb_buffer_pool_instances=8 import is done via bash script, here is the mysql code: SET …

1
将数据加载到临时表中时获得最少的日志记录
即使在阅读了《数据加载性能指南》之后,我仍然不确定是否有必要将TABLOCK表提示添加到一个空的临时表中,该临时表由一个聚集索引定义,以便获得最少的日志记录。 显然,临时表是在TempDB中创建的,该表以SIMPLE恢复模式运行,因此我本以为它是最小化日志记录的理想选择,但是我找不到找到该表的方法。 临时表是否可以作为最少日志记录的候选表?如果这样,是否值得为永久表推荐添加TABLOCK提示?

1
提高SQL Server上索引重建的速度
我正在将大量数据导入到一个空数据库中,在开始之前,我禁用了所有非唯一的非聚集索引,以查看是否可以改善导入性能。 现在我想重新启用索引,我想知道是否有什么我可以做的来优化它。 有超过100个表和将近2,000个索引要重建。该数据库的大小为200GB。 我正在运行的脚本的关键部分是: declare c_toggle_index cursor FORWARD_ONLY READ_ONLY for select 'alter index ' + QUOTENAME(i.name) + ' on ' + o.name + ' rebuild' from sys.indexes as i Inner Join sys.objects o On o.object_id = i.object_id Where o.is_ms_shipped = 0 And i.index_id >= 1 and i.type > 1 and …

1
导入时转储的mysql表替换了现有记录
我使用mysqldump进行了转储。 mysqldump -u... -p... mydb t1 > mydb_table.sql 然后,我将转储导入到另一个具有相同表但记录不同的数据库中。 mysql -u...-p... mydb < mydb_tables.sql 导入数据库的记录从primary_key 1到1000,导出数据库的记录从5000到10,000。 但是在导入时,现有记录(即1到1000)被删除了。 怎么样??为什么??如果它是默认行为,那么我可以给转储提供哪些选择,以免下次发生。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.