Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

SQL सर्वर से MySQL डेटा ट्रांसफर

मैंने अतीत में ऐसा करने के लिए जावा में jdbc-odbc ब्रिज का उपयोग किया था, लेकिन ODBC के माध्यम से प्रदर्शन बहुत अच्छा नहीं है। मेरा सुझाव है कि कुछ इस तरह देखें http://jtds.sourceforge.net/ जो एक शुद्ध जावा ड्राइवर है जिसे आप निम्न की तरह एक साधारण ग्रूवी स्क्रिप्ट में छोड़ सकते हैं:

import groovy.sql.Sql
sql = Sql.newInstance( 'jdbc:jtds:sqlserver://serverName/dbName-CLASS;domain=domainName',     
'username', 'password', 'net.sourceforge.jtds.jdbc.Driver' )
sql.eachRow( 'select * from tableName' ) { 
  println "$it.id -- ${it.firstName} --" 
  // probably write to mysql connection here or write to file, compress, transfer, load
}

निम्नलिखित प्रदर्शन संख्याएं आपको यह महसूस कराती हैं कि यह कैसा प्रदर्शन कर सकता है:http://jtds.sourceforge.net /benchTest.html

आपको mysql डंपफाइल प्रारूप में डेटा डंप करने और पंक्ति दर पंक्ति लिखने के बजाय mysql लोडडेटा का उपयोग करने के लिए कुछ प्रदर्शन लाभ मिल सकते हैं। यदि आप इनफाइल को लोड करते हैं और एटॉमिक टेबल स्वैप जैसी चीजें करते हैं, तो बड़े डेटा सेट के लिए MySQL में कुछ महत्वपूर्ण प्रदर्शन सुधार हैं।

हम एक सिस्टम से दूसरे सिस्टम में बड़ी डेटाफाइल्स को जल्दी से mysql में लोड करने के लिए कुछ इस तरह का उपयोग करते हैं। यह MySQL में डेटा लोड करने का सबसे तेज़ तंत्र है। लेकिन पंक्ति से वास्तविक समय पंक्ति ग्रोवी + कुछ तालिका में करने के लिए एक साधारण लूप हो सकती है ताकि यह पता चल सके कि किस पंक्ति को स्थानांतरित किया गया था।

mysql> select * from table into outfile 'tablename.dat';  

shell> myisamchk --keys-used=0 -rq '/data/mysql/schema_name/tablename'

mysql> load data infile 'tablename.dat' into table tablename;

shell> myisamchk -rq /data/mysql/schema_name/tablename

mysql> flush tables;
mysql> exit;

shell> rm tablename.dat


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP MySQLi multi_query तैयार कथन

  2. MySQL में D.O.B फ़ील्ड से आयु कैसे प्राप्त करें?

  3. MySQL क्वेरी, MAX () + ग्रुप बाय

  4. मैसकल को विशिष्ट तालिका की अंतिम आईडी मिलती है

  5. सभी मेजबानों से MySQL रूट एक्सेस