2011-09-18 49 views
20

¿Cuál es la longitud máxima para una contraseña de usuario de MySQL?Longitud máxima de contraseña de usuario de MySQL

MySQL usa PASSWORD(str) para cifrar la contraseña de texto claro str. Esta cadena de contraseñas hash se almacena en la tabla de concesión mysql.user con un tipo de datos CHAR(41).

Sin embargo, no pude encontrar cuál es la longitud máxima para la contraseña de texto claro str, si hay una. ¿Alguien puede ayudar?

+0

Esto no es una pregunta de programación. Tal vez es mejor en ServerFault? –

+3

Utiliza la función [CONTRASEÑA] (http://dev.mysql.com/doc/refman/5.1/en/encryption-functions.html#function_password) así que supongo que será sobre 2G. – NiematojakTomasz

+3

esta es una pregunta de programación – ErichBSchulz

Respuesta

9

Esto es las páginas de referencia que encontré cuando busqué en Google: Link1 y Link2

Si está utilizando replicación MySQL, tenga en cuenta que, actualmente, una contraseña utilizado por un esclavo de replicación como parte de una instrucción CAMBIAR MAESTRO A está efectivamente limitada a 32 caracteres de longitud; si la contraseña es más larga, cualquier exceso de caracteres se truncará. Esto no es debido a cualquier límite impuesto por el servidor MySQL en general, sino que es , un problema específico de la replicación de MySQL. (Para obtener más información, consulte Bug 43439.)

Fix documentado en el 5.7.5 changelog, de la siguiente manera:

La longitud máxima que se puede utilizar para la contraseña en un CAMBIO MAESTRO PARA declaración es de 32 caracteres . Anteriormente, cuando se empleaba una contraseña más larga, el servidor cortaba por error cualquier exceso de longitud. Ahora cuando la longitud de la contraseña excede los 32 caracteres, CHANGE MASTER TO falla con un error.

Así que supongo que mi contraseña no debe tener más de 32 caracteres.

+0

Eso sería un error de _nasty_ al encontrarlo. Estoy de acuerdo en que efectivamente se limita la longitud de la contraseña. – Chris

Cuestiones relacionadas