“there are certain variables that can be changed at runtime” that is true .. and actulay I thought about it myself only after posting!
It is a very good idea to directly issue a “SET GLOBAL … ” statement from inside MONyog and be able to compare the situation with and without it after some hours!
1) MONyog is basically a (webserver) service. I think that is explained in the docs!
2) We will not need to use the 'mysql' client if that is what you mean. MONyog is compiled with the C-API client code. It is a 'full-blooded' mysql client itself!
3) We could generate 'code snippets' for use with the mysql configuration file. But to change the file and to restart the server with the configuration we need shell access – a mysql client cannot. SSH is an option though. I won't say that we will never do such things, but it involves a lot of code actually, and MONyog is still pretty young. For the next months we will focus on:
* detailed InnoDB counters (SHOW INNODB STATUS, SHOW MUTEX STATUS)
An empty DUMP file is created when the program starts. The file is removed when it closes. If the program is 'killed' (not shutting down gracefully) the file will remain. Also it will remain as long as the job is running.
Please tell (for a start)
* Windows version
* remote or local servers? How do you connect (HTTP, SSH, direct)
* what kind of SJA job? data sync?
* how long does it normally take to complete the job?
Also always tell the MySQL versions involved (bothand )
First you should find out if the error is specific for a host, a database or if it happens all the time. los tell if it happens with 'two-way' only and not 'one-way'. As many details as you are able to find out!
If it is specific for some data:
best of all if you reproduce it with a small test case including
* a DUMP fromand
* the job-file
Please ZIP (or TAR) everything. Attach here or create a ticket if you want privacy. You may of course fake passwords …
If it is specific for some host it would be nice if we could have temporary access to that server.
To alter an index, you will have to execute SQL “ALTER TABLE”. Every change in an index will drop the existing index and build a new one from scratch. Ther is no SQL like ALTER INDEX ..
You can try to “manage indexes .. edit” and see the SQL form HISTORY like
Code:
alter table … drop key `t`, add index `t` (`t`, `id`)
of course we could allow for renaming and the SQL would be like
Code:
alter table … drop key `t`, add index `t_new` (`t`)
Do you request this? However you should be PERFECTLY aware that the old index will have to be dropped and a new will be built with ANY index change. What may take a lot of time with large tables. That probably also is why we did not support renaming an index (this was designed like that before my time!)
insert into table tablename1 (id,t) values ('','tt');
insert into table tablename1 (t) values ('tt');
First statement inserts an (empty) string in the INT column – Last statement simply OMITS the auto-increment column as well in the COLUMNs-list as the DATA-listing. Then the server will handle it!
If `id`is a (TINY)INT it may (depending on the server version and the server settings) cause an error 1064 (syntax error) to try to store a STRING in it. Because basically a NUMBER cannot be a STRING!
If the column is autoincrement, just omit that column in the INSERT statement – the server will take care of inserting into the column automatically.
In my exampe `t` was only the name/identifier of a column.
I think the issue might be that you are inserting a '' (empty string) into an integer field! Depending on the server sql_mode inserting a string to an integer filed may raise an error or a warning!
What is the MySQL version?
What does “select @@global.sql_mode” return?
with the table definition
CREATE TABLE `tablename1` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`t` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`)
try this
insert into table tablename1 (id,t) values ('','tt');
— and you'll get the 1064 error in 'strict mode' with MySQL 5 and 6, but
insert into table tablename (t) values ('tt'); — is OK!
When you are building a table in SQlyog you must have been connected to some MySQL server. SQLyog is a MySQL client and without conection to a MySQL server it is not able to do anything!
There is nothing to 'upload'. What you created in SQLyog is stored on the server.
However if you have been connected to a local server (and stored the table here) and want to transfer data to a remote server there are several options:
1) table menu .. 'copy to other' (you must be connected to both servers)
2) Powertools .. DATA sync (ENTERPRISE only FEATURE)
3) export from local server and import on the remote server (if server versions are different this is not always so easy!)