我无法在 Ubuntu 18.04 中以普通用户身份使用 MySql

我无法在 Ubuntu 18.04 中以普通用户身份使用 MySql

我在 Linux 中安装了 MySQl-server。但我无法以普通用户(本地)身份使用它。我必须以 root 用户身份使用它。我尝试使用 进行修复$ sudo chown -R sura:sura /usr/bin/mysql,但我仍然无法以普通用户身份使用 MySql。这是我$ mysql在非 root 终端中输入时总是遇到的错误,

ERROR 1045 (28000): Access denied for user 'sura'@'localhost' (using password: NO)

要在非root终端中使用,我必须放置sudo并跟随mysql,这可以让我在无需root的情况下使用MySql。

您有什么方法可以解决此问题吗?还是我必须继续以 root 用户身份使用 MySql?

如果是的话,您能告诉我修复的方法吗?

答案1

本教程您需要创建一个数据库和用户才能使用 mySQL。

要创建 MySQL 数据库和用户,请按照以下步骤操作

在命令行中,以root用户身份登录MySQL:

mysql -u root -p

输入 MySQL 根密码,然后按 Enter。

要创建数据库用户,请键入以下命令。将 替换username为您要创建的用户,并将 password 替换为用户的密码:

GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost' IDENTIFIED BY 'password';

此命令授予用户所有权限。但是,您可以授予特定权限以保持对数据库访问的精确控制。例如,要明确授予权限SELECT,您可以使用以下命令:

GRANT SELECT ON *.* TO 'username'@'localhost';

有关设置 MySQL 数据库权限的更多信息,请访问MySQL - 13.7.1.6 GRANT 语句

键入\q退出mysql程序。

要以刚创建的用户身份登录 MySQL,请键入以下命令。替换username为您上面创建的用户的名称:

mysql -u username -p

键入用户的密码,然后按 Enter。

要创建数据库,请键入以下命令。替换dbname为您要创建的数据库的名称:

CREATE DATABASE dbname;

要使用新数据库,请键入以下命令。将其替换dbname为您上面创建的数据库的名称:

USE dbname;

现在,您可以使用数据库了。例如,以下命令演示如何创建名为 example 的基本表,以及如何向其中插入一些数据:

CREATE TABLE example ( id smallint unsigned not null auto_increment, name varchar(20) not null, constraint pk_example primary key (id) );
INSERT INTO example ( id, name ) VALUES ( null, 'Sample data' );

在上面链接的教程中还可以找到更多内容,例如:

  • 创建 SQL 脚本
  • 删除表和数据库
  • 查看所有用户列表

更多信息

要查看 MySQL 官方文档,请访问MySQL 8.0 参考手册

相关内容