MySQL安装过程包括初始化数据目录,包括mysql
定义MySQL帐户的系统模式。有关详细信息,请参阅第2.10.1节“初始化数据目录”.
本节介绍如何将密码分配给初始根
如果您尚未这样做,请在MySQL安装过程中创建的帐户。
执行本节所述过程的可选方法:
在Windows上,您可以在使用MySQL安装程序安装期间执行此过程(请参阅第2.3.3节,“MySQL Installer for Windows”)。
在所有平台上,MySQL发行版包括mysql_secure_installation,这是一个命令行实用程序,可以自动执行保护MySQL安装的大部分过程。
在所有平台上,MySQL Workbench都是可用的,并提供了管理用户帐户的能力(参见31章,mysql工作台)。
在这些情况下,可能已经将密码分配给初始账户:
在Windows上,使用MySQL Installer执行的安装可以选择分配密码。
使用macOS安装程序进行安装将生成一个初始随机密码,安装程序将在一个对话框中向用户显示该密码。
使用RPM包安装会生成一个初始随机密码,并写入服务器错误日志。
使用Debian软件包的安装为您提供了分配密码的选项。
用于手动执行的数据目录初始化mysqld——初始化,mysqld生成初始随机密码,标记它已过期,并将其写入服务器错误日志。看第2.10.1节“初始化数据目录”.
的mysql.user
grant表定义了初始MySQL用户帐户及其访问权限。MySQL的安装只创建一个“根”@“localhost”
超级用户帐户,拥有所有特权,可以做任何事。如果根
帐户有一个空密码,您的MySQL安装未受保护:任何人都可以连接到MySQL服务器根
没有密码并被授予所有特权。
的“根”@“localhost”
帐户也有一排mysql.proxies_priv
允许授予代理
特权“@”
,即所有用户和所有主机。这使得能够根
要设置代理用户,并委托给其他帐户设置代理用户的权限。看第6.2.18节,“代理用户”.
为初始MySQL分配密码根
帐户,使用以下过程。代替根密码
在您想要使用的密码示例中。
如果未运行,请启动服务器。有关说明,请参阅第2.10.2节“启动服务器”.
最初的根
帐户可能有,也可能没有密码。选择下列任何一种程序:
如果
根
帐户存在于已过期的初始随机密码,连接到服务器根
使用该密码,然后选择一个新密码。如果数据目录被初始化,就会出现这种情况mysqld——初始化,手动安装或使用安装程序,安装程序不提供在安装操作期间指定密码的选项。因为密码存在,所以必须使用它来连接服务器。但是由于密码过期,您不能将该帐户用于任何目的,除非您选择一个新密码。如果您不知道初始随机密码,请查看服务器错误日志。
连接到服务器
根
使用密码:mysql -u root -p输入密码(在这里输入随机的根密码)
选择新密码替换随机密码:
MySQL> Alter's Root'@'localhost'识别'根密码”;
如果
根
帐户存在但没有密码,连接到服务器根
使用无密码,然后分配密码。如果您使用的数据目录初始化数据目录,就是这样的情况mysqld - italialize-insecure.连接到服务器
根
使用无密码:Shell > mysql -u root——skip-password
分配一个密码:
MySQL> Alter's Root'@'localhost'识别'根密码”;
在分配根
创建一个密码,无论何时使用该帐户连接到服务器,都必须提供该密码。例如,使用mysql客户端,使用此命令:
mysql -u root -p输入密码(在此处输入root密码)
以关闭服务器mysqladmin,使用以下命令:
shell> mysqladmin -u root -p shutdown输入密码:(在此处输入root密码)
有关设置密码的其他信息,请参见第6.2.14节“分配帐户密码”.如果你忘记了根
密码设置后请参见第b.3.3.2节“如何重置root密码”.
若要建立其他帐户,请参阅第6.2.8节,“添加帐户、分配特权和删除帐户”.