START SLAVE [thread_type
[,thread_type
] ... ] START SLAVE [SQL_THREAD] UNTIL MASTER_LOG_FILE = 'log_name
', MASTER_LOG_POS =log_pos
START SLAVE [SQL_THREAD] UNTIL RELAY_LOG_FILE = 'log_name
', RELAY_LOG_POS =log_pos
thread_type: IO_THREAD | SQL_THREAD
START SLAVE
sin opciones arranca los flujos
esclavos. El flujo de entrada/salida lee consultas del
servidor maestro y las almacena en el log retardado. El flujo
SQL lee el log retardado y ejecuta las consultas.
START SLAVE
require el permiso
SUPER
.
Si START SLAVE
tiene éxito al arrancar los
flujos esclavos, retorna sin ningún error. Sin emgargo,
incluso en tal caso, puede ser que el flujo esclavo arranqu y
luego pare (por ejemplo, porque no puede conectar con el
maestro o leer sus logs binarios, o algún otro problema).
START SLAVE
no le advierte acerca de esto.
Debe chequear el log de errores esclavo para mensajes de error
generados por los flujos esclavos, o chequear que estén
ejecutándos correctamente con SHOW SLAVE
STATUS
.
En MySQL 5.0, puede añadir las opciones
IO_THREAD
y SQL_THREAD
al comando para decir qué flujo arrancar.
Una cláusula UNTIL
puede añadirse para
especificar que el esclavo debe arrancar y ejecutar hasta que
el flujo SQL llegue a un punto dado en los logs binarios del
maestro o en los logs retardados del esclavo. Cuando el flujo
SQL llega a ese punto, para. Si la opción
SQL_THREAD
se especifica en el comando,
arranca sólo el flujo SQL. De otro modo, arranca ambos flujos
esclavos. Si el flujo SQL está en ejecución, la cláusula
UNTIL
se ignora y se muestra una
advertencia.
Para una cláusula UNTIL
, debe especificar
nombre de fichero de log y posición. No mezcle opciones de
maestro y log retardado.
Cualquier condición UNTIL
se resetea
mediante un comando STOP SLAVE
, un comando
START SLAVE
que no incluya cláusula
UNTIL
, o reinicio de servidor.
La cláusula UNTIL
puede ser útil para
depurar replicación, o para que la replicación proceda justo
antes del punto en que quiera evitar tener un esclavo
replicando un comando. Por ejemplo, si se ejecuta un comando
DROP TABLE
no deseado, puede usar
UNTIL
para decir al esclavo que ejecute
hasta ese punto pero no más. Para encontrar el evento, use
mysqlbinlog con los logs maestros o los
logs retardados del esclavo, o usando un comando SHOW
BINLOG EVENTS
.
Si está usando UNTIL
para tener las
consultas replicadas por el proceso esclavo en secciones, se
recomienda que arranque el esclavo con la opción
--skip-slave-start
para evitar que el flujo
SQL se ejecute cuando arranque el servidor. Es probablemente
mejor usar esta opción con un fichero de opciones en lugar
que en la línea de comandos, así que un reinicio inesperado
del servidor no hace que se olvide.
El comando SHOW SLAVE STATUS
incluye campos
de salida que muestran los valores actuales de la condición
UNTIL
.
En versiones prévias de MySQL, este comando se llamó
SLAVE START
cuyo uso todavía se acepta en
MySQL 5.0 por compatibilidad con versiones anteriores, pero
ahora está obsoleto.
Ésta es una traducción del manual de referencia de MySQL, que puede encontrarse en dev.mysql.com. El manual de referencia original de MySQL está escrito en inglés, y esta traducción no necesariamente está tan actualizada como la versión original. Para cualquier sugerencia sobre la traducción y para señalar errores de cualquier tipo, no dude en dirigirse a mysql-es@vespito.com.