I will be doing a series of tutorials (some simple, some more involved) in SSIS in the next little while. In addition to step by step instructions, I will also be providing the video tutorial equivalents which will be posted at the Black Ninja Software website. Once the video tutorials are up, I will be updating the individual links.
Now for this simple problem. You have a MySQL database, and you want to be able to dump data from it to SQL Server using SSIS.
Here are the steps:
1. If you haven’t already, download and install MySQL Connector for ODBC.
2. Create a DSN for your MySQL
a. Go to Start > Administrative Tools > Data Sources (ODBC)
b. Create a new User DSN (in my case I called it MySQL55)
SQL Server – uses NEWID() in ORDER BY
1: -- using the AdventureWorks Database
3: TOP 10
8: ORDER BY
MySQL – uses RAND() in ORDER BY
6: ORDER BY
8: LIMIT 10;
Came across this handy cheat sheet for MySQL EXPLAIN:
EXPLAIN is a clause in MySQL that explains how a SELECT statement will be executed, and allows one to determine whether the indexing scheme is effective or not.
Doug Bromley of Straw Dogs have posted 20 Indispensible MySQL Resources, which include
In addition, the following tools are in my MySQL toolbox if I am wearing my MySQL DBA hat on:
Had a question from a student:
He is trying to increase the innodb log file size by altering his .ini file.
After he makes the changes to the .ini file, he attempts to restart the server but fails.
Error messages indicate:
-ib_logfile0 has a different size
-can’t initialize database
The solution was posted by Jay Pipes in the MySQL forum (http://forums.mysql.com/read.php?22,32004,32014#msg-32014). Essentially MySQL tries to look for the log file that had the original size, doesn’t find it, aborts the restart.
Solution is to rename the log files. MySQL will recreate the appropriate log files with the appropriate sizes.
#assuming you have a Linux system and you installed MySQL using an RPM#otherwise your MySQL install might be in /usr/local#if you can't figure out where your install folder it, "find" is your friend $/etc/init.d/mysql stop$mv /var/lib/mysql/ib_logfile0 /var/lib/mysql/ib_logfile0.bak$mv /var/lib/mysql/ib_logfile1 /var/lib/mysql/ib_logfile1.bak$/etc/init.d/mysql start$