MySQL server 5.0.18
phpMyAdmin 2.8.2.4
php 5.1.2
Apache
Windows

Premesso che mi sono letto la pagina del manuale di mysqldump, tutti gli articoli sul backup di MySQL e tutti i post che ho trovato con la ricerca.

Il mio dubbio è come riuscire a far funzionare mysqldump lanciato da riga di comando esattamente come phpMyAdmin.
Ho provato a giocare un pò con le opzioni --compact e --opt e altre.. ma non riesco a capirne bene il funzionamento.

se faccio il dump a mano senza specificare opzioni ottengo
1) commenti
2) schifezze del tipo
Codice PHP:
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */
che non capisco a cosa servono
3) lock e unlock sulle tabelle
4) IMPORTANTE: creazione di vincoli di tipo FOREIGN KEYS direttamente in fase in CREATE TABLE, esempio:
Codice PHP:
CREATE TABLE `tabella` (
  `
idint(10unsigned NOT NULL auto_increment,
  `
nomevarchar(50NOT NULL,
  `
chiave_extint(10unsigned NOT NULL,
  
PRIMARY KEY  (`id`),
  
KEY `chiave_ext` (`chiave_ext`),
  
CONSTRAINT `tabella_ibfk_1FOREIGN KEY (`chiave_ext`) REFERENCES `altra_tabella` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION
ENGINE=InnoDB DEFAULT CHARSET=utf8
Il punto 4 mi manda in errore tutti i restore di DB con relazioni basate su foreign keys, in quanto (credo) tenta di referenziare tabella che devono ancora essere create.
Invece phpMyAdmin crea prima tutte le tabelle e in fondo fa
Codice PHP:
ALTER TABLE `tabella`
  
ADD CONSTRAINT ecc ecc 
Con nessuna opzione di mysqldump riesco a fare in modo che i vincoli vengano aggiunti in fondo, e quindi a evitare gli errori in fase di restore.

Inoltre mi piacerebbe ottenere la stessa snellezza ma al contempo presenza di commenti del dump di phpmyadmin. Se con mysqldump uso --compact perdo i commenti e le spaziature che erano alquanto comode.

Un'altra domanda. Da manuale si legge che ci sono delle variabili che regolano le opzioni di default di mysqldump. Questo file di configurazione sembra essere il my.ini. Ma dentro il my.ini ci sono solo qualche decina di variabili e non ci sono quelle indicate dall'help di mysqldump. Sto sbagliando file?