Note that there are some explanatory texts on larger screens.

plurals
  1. POTurnoff mysql unsafe statement warning
    primarykey
    data
    text
    <p>I am using log-error to write warning/errors into a file. When I perform INSERT IGNORE..SELECT statement, it just keep write this warning messages.</p> <pre><code>120905 3:01:23 [Warning] Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. INSERT IGNORE... SELECT is unsafe because the order in which rows are retrieved by the SELECT determines which (if any) rows are ignored. This order cannot be predicted and may differ on master and the slave. </code></pre> <p>I want to stop mysql logwriter keep writing the error above over and over. (I can't see other log because they fillout the whole logfile...)</p> <p>First of all, I insert (a, b, c) into a table. c should be unique in the table, and a, b are used to select. Query will be like this</p> <pre><code>SELECT c FROM table WHERE a=value1 AND value2&lt;b AND b&lt;value3 </code></pre> <p>And my insert query is</p> <pre><code>INSERT IGNORE INTO table VALUES (,,),(,,)...(,,) </code></pre> <p>I thought I could change the query not to produce warning, but my data contain unique field and I need to guarantee that the filed is unique in the table. And 500~2000 rows should be inserted in every few seconds, so I need to do bulk insert.</p> <p>If there are already dozen of millions row inserted, and I need to insert another 2000 rows in few seconds. How can I insert them safely into the table without filling the logfile with the warnings?</p> <p>(I can't turn off the binary log because I need to use mysql replication.)</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload