<p>I'm using <strong>mysqldump</strong> to replicate a database between accounts on a particular machine.  Everything works just great, except when we get to our defined views.  Because the dump includes a line like the following ...</p>

<pre><code>/*!50013 DEFINER=`user_a`@`localhost` SQL SECURITY DEFINER */
</code></pre>

<p>... when loading the dump into mysql on user_b we receive an error: </p>

<pre><code>ERROR 1227 (42000) at line 657: Access denied; you need the SUPER privilege for this operation
</code></pre>

<p>Needless to say, I don't have SUPER privilege on this mysql instance.  Is there a way to convince <strong>mysqldump</strong> to dump the views in a user-agnostic way?  I can't find anything in the manual on this point.   Do I have to actually parse the dumpfile to replace the usernames?  Or am I missing something?</p>

The SQL SECURITY clauses determine which MySQL account to use when checking access privileges for the view (as you have probably figured out).
When you create a view you can define a couple of options for security for that view.  You can read more
here
, but essentially by default access is restricted to the 'definer' of the view, i.e. the user who created it.