Raspberrypi 安装完MySQL之后登录不了(ERROR 1698 (28000))
1.问题原因:
出现这是错误是因为 mysql 默认的 root 用户使用了 UNIX auth_socket_plugin 的用户认证方式,我们有下面两种方式处理问题:
- 修改 root 用户认证方式为 mysql_native_password plugin,即改为使用密码登录
- 使用系统当前的用户名创建一个数据库用户(推荐)
2.解决方案:
方法一:修改 root 用户认证方式为 mysql_native_password plugin
首先登陆MySQL使用sudo.
sudo mysql -uroot
修改MySQL-root用户的登陆方式.
USE mysql;
UPDATE user SET plugin= 'mysql_native_password' WHERE user='root';
FLUSH PRIVILEGES;
exit;
重启MySQL服务,登陆root用户.
sudo service mysql restart
mysql -u root # 初始安装并没有设置密码,所以直接就能登录了
方法二:创建新的MySQL User
Step1. Login in the mysql without passwd.
sudo mysql -uroot
Setp2. Use the mysql database to setup the new User.
use mysql;
select user,host,plugin from user;
create user 'pi'@'localhost' identified by 'mysql';
create user 'pi'@'%' identified by 'mysql';
update user set plugin='unix_socket' where user='pi';
select user,host,plugin from user;
flush privileges;

Step3. Setting the privilige of the new user.
grant all privileges on * to pi@'localhost' identified by 'mysql';
grant all privileges on * to pi@'%' identified by 'mysql';
flush privileges;
1.PrivilegesCode表示授予的权限类型,常用的有以下几种类型:
- all privileges:所有权限。
- select:读取权限。
- delete:删除权限。
- update:更新权限。
- create:创建权限。
- drop:删除数据库、数据表权限。
2.DbName.tableName表示授予权限的具体库或表,常用的有以下几种选项:
- .*:授予该数据库服务器所有数据库的权限。
- dbName.*:授予dbName数据库所有表的权限。
- dbName.dbTable:授予数据库dbName中dbTable表的权限。
3.Username@host表示授予的用户以及允许该用户登录的IP地址。其中Host有以下几种类型:
- localhost:只允许该用户在本地登录,不能远程登录。
- %:允许在除本机之外的任何一台机器远程登录。
- 192.168.52.32:具体的IP表示只允许该用户从特定IP登录。
- password指定该用户登录时的页面。
- flush privileges表示刷新权限变更。
Step4. Check the privilige of the user.
show grants for 'pi';

Delet a User :
drop user命令会删除用户以及对应的权限,执行命令后你会发现mysql.user表和mysql.db表的相应记录都消失了。
drop user 'pi'@'%';
3.参考文献:
1.ERROR 1698 (28000)Access denied for user 'root'@'localhost': http://www.mamicode.com/info-detail-2491371.html
2. MySQL用户管理:添加用户、授权、删除用户:https://www.cnblogs.com/pejsidney/p/8945934.html
3.MySQL用户管理 :http://www.cnblogs.com/chanshuyi/p/mysql_user_mng.html
Raspberrypi 安装完MySQL之后登录不了(ERROR 1698 (28000))的更多相关文章
- centos7 上安装mysql5.7后登录报错ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: Yes 或者No)
原文转载自以下链接:https://blog.csdn.net/keepd/article/details/77151006 安装完mysql后会有个临时密码去日志查看,但是查看登录修改密后还是不行 ...
- 密码正确 mysql无法登陆 red7.3 上安装mysql5.6后登录报错ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using passswd :yes)
集群需要mysql存储元数据,就在前几天还运行好好的,突然就进不去了......还是太菜,遇到的bug少. 引起这种故障的原因有很多......第一个坑比较多,大部分用户也就用第一个就可以解决问题,我 ...
- 安装完 MySQL 后必须调整的 10 项配置(转)
英文原文:10 MySQL settings to tune after installation 译文原文:安装完 MySQL 后必须调整的 10 项配置 当我们被人雇来监测MySQL性能时,人们希 ...
- 安装完MySQL数据库设置密码
对于windows平台来说安装完MySQL数据库后,系统就已经默认生成了许可表和账户,你不需要像在Unix平台上那样执行 mysql_install_db脚本来生成帐户和相应权限许可表.但是如果不是用 ...
- 解决mysql登录报错ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)问题
问题描述: 在ubuntu14.04上安装完MYSQL后,MYSQL默认给分配了一个默认密码,但当自己在终端上使用默认密码登录的时候,总会提示一个授权失败的错误. 报错信息:Access denied ...
- CentOS命令登录MySQL时,报错ERROR 1045 (28000):
CentOS命令登录MySQL时,报错ERROR 1045 (28000): Access denied for user root@localhost (using password: NO)错误解 ...
- mysql全局权限账户%登录不上ERROR 1045 (28000): Access denied for user 'mhz'@'localhost' (using password: YES)
mysql全局权限账户%登录不上ERROR 1045 (28000): Access denied for user 'mhz'@'localhost' (using password: YES) 解 ...
- mysql安装以后无法登陆的的解决方法((ERROR 1698 (28000): Access denied for user 'root'@'localhost'))
mysql安装以后无法登陆的的解决方法((ERROR 1698 (28000): Access denied for user 'root'@'localhost')) 解决步骤: [====> ...
- Ubuntu下使用mysqli-connect连接mysql时报错:ERROR 1698 (28000): Access denied for user 'root'@'localhost'
LNMP安装好后,写了个index.php文件,里面的内容很简单,就是想测试php与mysql的通信是否正常,代码如下: <?php $host = 'localhost'; $user = ' ...
随机推荐
- Kafka相关概念及核心配置说明
1. Kafka简介 Kafka是最初由Linkedin公司开发,是一个分布式.支持分区的(partition).多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大的特性 ...
- baidu echats简介
http://note.youdao.com/noteshare?id=ef467acdbe5b84005a1315d77a4475d1
- Paper Mark
BigCowPeking的CSDN博客 https://blog.csdn.net/wfei101/article/category/7120809 Low Rank Structure of Lea ...
- pacman 命令(安装所有软件包)
MSYS2 中pacman安装所有软件包命令: pacman -Sl | awk '{cmd="pacman -S --needed --noconfirm "$2;system( ...
- 关于字符串中每个单词的首字母大写化问题之 拆分split(/\s+/)
var a = 'Hi, my name\'s Han Meimei, a SOFTWARE engineer'; //for循环 function titleCase(s) { var i, ss ...
- 腾讯云远程连接Kafka
腾讯云服务器上部署Kafka,使用server.properties中公网IP配置: 启动时候报错: ERROR [KafkaServer id=0] Fatal error during Kafka ...
- 使用nfsstat命令查看NFS服务器状态
转载于:http://www.cnblogs.com/jankie/archive/2011/09/03/2165851.html nfsstat命令显示关于NFS和到内核的远程过程调用(RPC)接口 ...
- oracle数据库基于(streams流复制)的双机热备配置手册
------------------------------------------------------------------------------- 主数据库: 操作系统:windows 2 ...
- spring-boot 几个工具类(七)
环境 jdk 6 tomcat 6.0.53 sts 4.4.2 maven 3.2.5 mysql 5.7 SpringContextHolder SpringContextHolder 可以很方便 ...
- SpringBoot起飞系列-国际化(六)
一.前言 国际化这个功能可能我们不常用,但是在有需要的地方还是必须要上的,今天我们就来看一下怎么在我们的web开发中配置国际化,让我们的网站可以根据语言来展示不同的形式.本文接续上一篇SpringBo ...