Forum Replies Created
-
AuthorPosts
-
gberz3Member
Would it not also be possible, in the event of no PK or UNIQUE ID, to at least compare existing rows for presence then add complete rows based on that? I know that using PYTHON there are a few lambda functions where you can compare lists for individual rows and basically say “complete rows in (or not in) another list” then add the rows you need. Granted, this might result in “duplicate” entries with differing data, but I'd rather have that than to completely DROP another table. Just my 2¢.
gberz3MemberQUOTE(peterlaursen @ Feb 18 2006, 01:09 PM)BTW: is thisyour own discovery? Quite valuable actually if it is true and complete!
[snapback]8790[/snapback]Yes, after reviewing my own cryptic documentation from months past I retraced some steps and narrowed it down. I can't promise it's not published elsewhere (or that it's the only method), but those findings came from my own discoveries. 😉
gberz3MemberQUOTE(peterlaursen @ Feb 18 2006, 01:04 PM)Are MySQL versions identical?http://webyog.com/faq/11_68_en.html.
Is the SJA recent? It should display an error essage.
Unless there is a simple 'NULL definition mismatch'.
Read in detail about data sync:
http://webyog.com/articles/Using_SQLyog_En…L_Databases.pdf
[snapback]8789[/snapback]Good call. I was trying it with different machines (with, of course, various versions of MySQL :eek:) and it was only occuring with syncs between different versions. Everything works with the same version. Thank you!
gberz3MemberOk, actually got past all that. Now, I'm having a different issue. After using SJA to sync the tables, I get the following when I repeat it in EXACTLY the same fashion:
CODECheck sja.log for complete error details.
NULL definition mismatch for 'Product_ID' column in '`My_products`' table
Check sja.log for complete error details.
NULL definition mismatch for 'Product_ID' column in '`Other_rates`' table
. . .
What could possibly be occurring?
gberz3MemberQUOTE(peterlaursen @ Feb 18 2006, 11:55 AM)and use the local ip (ie. 10.0.0.1 or whatever and not 127.0.0.1) I would add. Or some name server alias for that.[snapback]8783[/snapback]After much anguish it appears that the “solution” is as follows:
1) make sure your '/etc/hosts' file reads as follows:
CODE127.0.0.1 localhost //localhost *MUST* be first (notice separate entries)
127.0.0.1 localhost.localdomain
127.0.0.1 . . .
2) make sure you reference the local server in the SJA.XML file as:
CODE127.0.0.1 or
localhost.localdomain This will then allow the sync to occur. I am now having a problem, however, with the actual sync. I Intentinally set up a database with no data (but full of tables). I then tried to sync it with another completely empty database (no tables present). The output lists all the tables from the database with tables, however, it doesn't propagate those tables to the 'empty' database. What could possibly be the problem?
The following is my XML file:
CODE127.0.0.1 root 3310 fulldb 127.0.0.1 root 3306 emptydb I have port 3310 SSH forwarded to the remote machine. Everything works and it sees it (as I said), and even the output misleads you to think that a sync occurred, but no tables get copied. 😕
gberz3MemberQUOTE(peterlaursen @ Feb 18 2006, 09:53 AM)You don't answer my questio, I believe!I am not talking about commandline! Clients that connect through socket are irrelevant here! It must be a client using TCP for connection!
In your my.cnf does it read like
skip_networking
or
#skip_networking
…if it is 1st then TCP connections are disabled.
Also: do you have any firewall application running?
[snapback]8780[/snapback]First of all, I included the fact that I used the MySQLdb module which is the Python API for accessing mysql. I certainly believe that is relevant. As far as my my.cnf file goes, it says, and I quote:
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 127.0.0.1
gberz3MemberQUOTE(peterlaursen @ Feb 17 2006, 05:29 PM). . .Can you connect with some other client using the C-API, such as *MySQL Administrator* ?
I don't know ubuntu (and what type of install packages it uses) but is a big deal to uninstall the distro-version of MySQL and install/compile a standard build from mysql.com? If you can do this I suggest you try it.
. . .
Yes, using “localhost” I can connect to the 'mysql' program directly. I also created a quickie program in python using the MySQLdb module, and it worked as well. SJA seems to be the only thing that will *not* work. I realize the program is free, and we can't necessarily rightfully expect top-of-the-line support, but would your people mind givng debian and/or ubuntu a quick runthrough and see what the problem might be?
gberz3MemberQUOTE(peterlaursen @ Nov 17 2005, 06:17 AM)well .. I can only say that it works for me on SUSE 10.I don't know if there could be an issue with Read Hat 7.
[snapback]7910[/snapback]Could you provide a list of the Linux versions on which you have built/verified the SJA tool? I have still not overcome the problem in Ubuntu 5.10.
Thanks.
gberz3MemberQUOTE(raja1979 @ Nov 17 2005, 10:03 AM)It also contains the same messageSync started at Thu Nov 17 13:26:50 2005
Could not connect to SOURCE MySQL server
Is there any version problem of Mysql or Linux
[snapback]7912[/snapback]I'm having a similar (if not the same) issue, running Ubuntu 5.10. I can connect to remote servers all day (if I set *them* up as the SOURCE, for instance), but then I, of course, receive “Could not connect to TARGET. . .” Some documentation on what exactly SJA is doing (or more verbose logging) would be soooooo helpful.
gberz3Member*shrug* Maybe when you make your calls into MySQL to connect, etc. it defaults to 3306? Either way 3310 works. 😉
gberz3MemberThanks, Ritesh. I don't know what was going on, but none of the other ports I used seemed to work. I tried ports like 5555, and 5551, etc. . .But apparently SJA saw that these were in use and went with default 3306? Either way, 3310 worked!
-
AuthorPosts