在Linux 系统上安装 MySQL并创建新数据库后,您需要设置一个新用户来访问该数据库,授予其读取和/或写入数据的权限。
不建议使用 root 帐户,而是根据需要创建一个新帐户并授予权限,在本教程中,您将看到如何允许用户在 Linux 上访问 MySQL 数据库。
在本教程中,您将学习:
- 如何创建一个新的 MySQL 用户
- 如何允许完全用户访问 MySQL 数据库
- 如何允许某些类型的访问 MySQL 数据库
第一步
首先使用 root 帐户打开 MySQL。
$ sudo mysql
或者,在某些配置中,您可能需要输入以下命令并提供您的 root 密码:
$ mysql -u root -p
第二步
如果您还没有这样做,请创建一个新用户,我们将在后面的步骤中向其授予数据库权限。以下示例创建用户wljslmz,使用您自己的信息填写占位符值。
mysql> CREATE USER 'wljslmz'@'localhost' IDENTIFIED BY 'password_here';
如果您还没有创建数据库,请同时创建:
mysql> CREATE DATABASE test;
第三步
现在是时候向我们的wljslmz用户授予test数据库权限了,以下是您向用户授予完全权限的方式,这允许他们对数据库执行任何操作。
mysql> GRANT ALL PRIVILEGES ON test.* TO 'wljslmz'@'localhost';
或者,如果您只想授予用户访问数据库mytable内特定表的权限test:
mysql> GRANT ALL PRIVILEGES ON test.mytable TO 'wljslmz'@'localhost';
如果您不想将所有权限授予用户,您也可以使用其他权限。
- CREATE - 允许用户在数据库中创建新表
- DROP - 允许用户删除表或数据库本身
- DELETE - 允许用户删除表中的行
- INSERT - 允许用户向表中插入新的数据行
- SELECT - 允许用户读取数据库中的条目
- UPDATE - 允许用户更新现有的数据库行
第四步
最后一步是在完全退出 MySQL 之前刷新所有权限。
mysql> FLUSH PRIVILEGES;
mysql> exit
这里的所有都是它的,您的用户现在应该能够访问数据库或您授予访问权限的数据库内的任何表。
总结
在本教程中,我们了解了如何允许用户访问 Linux 系统上的 MySQL 数据库。这比使用 root 帐户执行所有操作更好、更安全,并且应该在任何 Linux 发行版上都可以正常工作。现在很容易授予更多特权或根据需要将其取消。