Establecer la contraseña del usuario root de MySQL en OS X
Acabo de instalar MySQL en Mac OS X. El siguiente paso era establecer la contraseña del usuario root, así que lo hice a continuación:
-
Inicie la aplicación de terminal para acceder a la línea de comandos de Unix.
-
Bajo el prompt de Unix ejecuté estos comandos:
$ cd /usr/local/mysql/bin $ ./mysqladmin -u root password 'password'
Pero, cuando ejecuto el comando
$ ./mysql -u root
, esta es la respuesta:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 224
Server version: 5.5.13 MySQL Community Server (GPL)
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
¡Puedo entrar en la línea de comandos mysql
sin ninguna contraseña!
¿Por qué es esto?
226
3
Pruebe el comando
FLUSH PRIVILEGES
cuando entre en la terminal de MySQL. Si eso no funciona, pruebe el siguiente conjunto de comandos mientras está en la terminal de MySQLCambia NEWPASSWORD por la contraseña que quieras. Debería estar todo listo.
Actualización: A partir de MySQL 5.7, el campo
password
ha sido renombrado comoauthentication_string
. Cuando cambie la contraseña, utilice la siguiente consulta para cambiar la contraseña. Todos los demás comandos siguen siendo los mismos:Actualización: En la versión 8.0.15 (quizás ya antes de esa versión) la función PASSWORD() no funciona, como se menciona en los comentarios de abajo. Tienes que usar:
UPDATE mysql.user SET authentication_string='password' WHERE User='root';
.Si no recuerdas la contraseña que estableciste para el root y necesitas restablecerla, sigue estos pasos:
sudo mysqld_safe --skip-grant-tables;
mysql -u root
Para MySQL anterior a MySQL 5.7 utilice:
UPDATE mysql.user SET Password=PASSWORD('su-contraseña') WHERE User='root';
.Para MySQL 5.7+ utilice:
USE mysql;
UPDATE mysql.user SET authentication_string=PASSWORD("su-contraseña") WHERE User='root';
Actualice y salga:
FLUSH PRIVILEGES;
\q
Una vez que haya instalado MySQL, tendrá que establecer la contraseña de "root". Si no establece una contraseña de root, entonces, bueno, no hay contraseña de root, y no necesita una contraseña para iniciar sesión.
Así que, dicho esto, tienes que establecer una contraseña de root.
Usando el terminal ingrese lo siguiente:
Instalación: Establecer contraseña de usuario root:
Si te has equivocado, o necesitas cambiar la contraseña de root utiliza lo siguiente:
Cambiar la contraseña de root: