mysql root用户是否始终具有默认的所有权限?

mysql root用户是否始终具有默认的所有权限?,mysql,ubuntu-16.04,Mysql,Ubuntu 16.04,我按照答案在Ubuntu 16.04上设置我的根密码msql--version提供了以下信息: mysql Ver 15.1 Distrib 10.0.31-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2 Query OK, 0 row affected (0.00 sec) Rows matched: 1 Changed: 0 Warnings: 0 在回答之后,当我键入updatemysql.user SET Pa

我按照答案在Ubuntu 16.04上设置我的根密码<代码>msql--version提供了以下信息:

mysql  Ver 15.1 Distrib 10.0.31-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
Query OK, 0 row affected (0.00 sec)
Rows matched: 1  Changed: 0  Warnings: 0
在回答之后,当我键入
updatemysql.user SET Password=Password('Password'),其中user='root'我得到这个:

Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
   Active: active (running) since Sáb 2017-11-11 00:44:57 BRST; 5s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 4808 ExecStop=/etc/init.d/mysql stop (code=exited, status=0/SUCCESS)
  Process: 5330 ExecStart=/etc/init.d/mysql start (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/mysql.service
           ├─5358 /bin/bash /usr/bin/mysqld_safe
           ├─5502 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --user=mysql --skip-log-error --p
           └─5503 logger -t mysqld -p daemon error

Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Note] InnoDB: 128 rollback segment(s) are active.
Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Note] InnoDB: Waiting for purge to start
Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.36-82.0 started; log sequence nu
Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Note] Plugin 'FEEDBACK' is disabled.
Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Note] Server socket created on IP: '127.0.0.1'.
Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Warning] 'user' entry 'root@localhost' has both a password and an authentication plugin spe
Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Note] /usr/sbin/mysqld: ready for connections.
Nov 11 00:44:56 acer mysqld[5503]: Version: '10.0.31-MariaDB-0ubuntu0.16.04.2'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  Ubuntu 16.04
Nov 11 00:44:57 acer mysql[5330]:    ...done.
Nov 11 00:44:57 acer systemd[1]: Started LSB: Start and stop the mysql database server daemon.
我发现,当我使用相同的密码键入相同的命令时,它会给我以下信息:

mysql  Ver 15.1 Distrib 10.0.31-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
Query OK, 0 row affected (0.00 sec)
Rows matched: 1  Changed: 0  Warnings: 0
我认为这是正确的。然后我键入最后两个命令,当我键入
mysql-uroot-p
然后键入
password
时,我仍然得到以下结果:

Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
   Active: active (running) since Sáb 2017-11-11 00:44:57 BRST; 5s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 4808 ExecStop=/etc/init.d/mysql stop (code=exited, status=0/SUCCESS)
  Process: 5330 ExecStart=/etc/init.d/mysql start (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/mysql.service
           ├─5358 /bin/bash /usr/bin/mysqld_safe
           ├─5502 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --user=mysql --skip-log-error --p
           └─5503 logger -t mysqld -p daemon error

Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Note] InnoDB: 128 rollback segment(s) are active.
Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Note] InnoDB: Waiting for purge to start
Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.36-82.0 started; log sequence nu
Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Note] Plugin 'FEEDBACK' is disabled.
Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Note] Server socket created on IP: '127.0.0.1'.
Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Warning] 'user' entry 'root@localhost' has both a password and an authentication plugin spe
Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Note] /usr/sbin/mysqld: ready for connections.
Nov 11 00:44:56 acer mysqld[5503]: Version: '10.0.31-MariaDB-0ubuntu0.16.04.2'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  Ubuntu 16.04
Nov 11 00:44:57 acer mysql[5330]:    ...done.
Nov 11 00:44:57 acer systemd[1]: Started LSB: Start and stop the mysql database server daemon.
我有没有跳过任何非常新手的步骤?或任何向您输出更多数据的命令

更新

当我键入
sudo-service-mysql-status
时,我得到以下信息:

Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
   Active: active (running) since Sáb 2017-11-11 00:44:57 BRST; 5s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 4808 ExecStop=/etc/init.d/mysql stop (code=exited, status=0/SUCCESS)
  Process: 5330 ExecStart=/etc/init.d/mysql start (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/mysql.service
           ├─5358 /bin/bash /usr/bin/mysqld_safe
           ├─5502 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --user=mysql --skip-log-error --p
           └─5503 logger -t mysqld -p daemon error

Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Note] InnoDB: 128 rollback segment(s) are active.
Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Note] InnoDB: Waiting for purge to start
Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.36-82.0 started; log sequence nu
Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Note] Plugin 'FEEDBACK' is disabled.
Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Note] Server socket created on IP: '127.0.0.1'.
Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Warning] 'user' entry 'root@localhost' has both a password and an authentication plugin spe
Nov 11 00:44:56 acer mysqld[5503]: 171111  0:44:56 [Note] /usr/sbin/mysqld: ready for connections.
Nov 11 00:44:56 acer mysqld[5503]: Version: '10.0.31-MariaDB-0ubuntu0.16.04.2'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  Ubuntu 16.04
Nov 11 00:44:57 acer mysql[5330]:    ...done.
Nov 11 00:44:57 acer systemd[1]: Started LSB: Start and stop the mysql database server daemon.
如图所示,我的日志应该是正常的。对吗

更新

为我工作。但在寻找根用户权限时,我在上结束,它显示“我的根用户没有所有权限”。这是一个标准吗?如果是的话,
root
用户不应该拥有所有这些特权吗?是不是没有,为什么?这是一个安全问题吗?

MySQL 5.7.6及更高版本:

更改由“您的新密码”标识的用户“root”@“localhost”

MySQL 5.7.5及更早版本:

为'root'@'localhost'设置密码=密码(“您的新密码”)


我的理解是,默认情况下,
root@localhost
拥有完全权限,而
root@%
(以root身份远程连接)没有。这是件好事。。。在日常数据库使用中,不应使用根帐户


如果您需要使用超级用户权限进行远程连接,我建议您创建一个
admin
帐户,该帐户可以执行所需的操作。(您仍然可以远程登录并访问根帐户。)具体的安全规定(管理员需要什么权限)可能是一个单独的问题——可能是一个无法回答的问题,除非您可以非常具体地说明您的用例。

我编辑了我的问题,以说明我的新疑问。谢谢你的时间和耐心。如果你知道新的问题,请随意编辑你的答案,但从我的故事中,我不能告诉你,因为
root@localhost
我有完全的权限。如您所见,我试图使用
root@localhost
,但仍然不允许登录。我不知道您更改了什么使其工作,但设置MySQL通常还需要修改防火墙设置。(如果您没有更改端口/防火墙设置,那就不是这样了。)不要混淆Ubuntu的“根”和MySQL的“根”。