In an attempt to consolidate some servers here, I need to move my primary Intranet application DB from a RHEL5 server to a Windows 2003 server.
The Intranet DB is nothing amazing yet - little over 5mb and roughly 49 tables.
On RHEL5, I'm on mySQL 5.0.45 On Windows 2003, I'm on mySQL 5.0.51a
So, I tried mysqldump to a sql file and import it
I tried export and import via phpMyAdmin
Both work fine. The tables are imported and everything "looks" cool.
I go to test the various parts of the website, starting with the biggest part, and I fail on a simple Insert command.
I have all error reporting turned off for security (even on the intranet) so I send myself an email via php when a mysql error occurs and this is the first time the problem presents itself.
mySQL is erroring out on the fact the emp_id is empty - which it should be
Going back to phpMyAdmin, I put the same table side by side, 1 window showing the old server, 1 showing the new server.
The only difference I can see is on the rhel5 server, the field is marked Null=no and default field is empty (nothing in it)
On the Windows server, the field is marked Null=no and the default field is marked None.
So -
Why during the move does the default value change from "empty" to "none" ?
Is there a setting somewhere in mySQL that I can specify the default value to be "empty"?
I'm afraid if I go through all the tables on the production server and change anything thats supposed to be null to "none" that I'm going to inadvertently break something.
?
-Mario