Mysql Access denied for user 'root'

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

解决方法: 更改root密码

原密码为空,更改root密码

# service mysql stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking

然后登陆mysql

sudo mysql -u root,设置密码

mysql> use mysql;
mysql> update user set password=password('新密码') where user='root';
mysql> flush privileges;
mysql> quit

重启数据库再次登陆即可

# service mysql restart
Enter password: <输入新设的密码>

增加一个数据库用户

mysql> insert into mysql.user (Host,User,Password) VALUES('%','your username',PASSWORD('your password'));
mysql> flush privileges;

创建数据库

create database DatabaseName;
grant select,insert,update,delete,create,drop,alter on DatabaseName.* to username@localhost identified by 'password';

把数据库权限全部授予指定用户

grant all privileges on DatabaseName.* to 'username'@'%';

远程登陆

授权用户root使用密码123456从任意主机连接到mysql服务器:

grant all privileges on *.* to 'root'@'%' identified by '' with grant option;
flush privileges;

授权用户test使用密码123456,从指定ip为123.4.5.6的主机连接到mysql服务器:

grant all privileges on *.* to 'test'@'123.4.5.6' identified by '' with grant option;
flush privileges;

然后我们查询用户情况

mysql> use mysql;

mysql> select Host,User from user;

如果是类似与这样的输出,test前有%,代表从任意主机登陆

+----------------+------+
| Host | User |
+----------------+------+
| % | test |
| 123.4.5.6 | test |
| localhost | root |
+----------------+------+

比如我想让root从任意ip远程访问,也可以在这里直接修改

mysql> update user set host = '%' where user = 'root';

备份mysql数据库

mysqldump -u 用户名 -p 密码 数据库名 > back.sql  //备份指定数据库
mysqldump --all-databases > bak.sql    //备份所有数据库

还原mysql数据库

mysql -u 用户名 -p 密码 数据库名 < bak.sql

mysql使用问题记录的更多相关文章

  1. MySQL高效获取记录总数

    通常mysql获取查询记录总数我们使用如下语句: SELECT COUNT(*) FROM users WHERE k='avs';  或:SELECT id FROM goods WHERE k=' ...

  2. CentOS7.4安装MySQL踩坑记录

    CentOS7.4安装MySQL踩坑记录 time: 2018.3.19 CentOS7.4安装MySQL时网上的文档虽然多但是不靠谱的也多, 可能因为版本与时间的问题, 所以记录下自己踩坑的过程, ...

  3. 使用Anemometer分析MySQL慢查询记录

    数据库管理员一般是用percona的toolkit工具来分析MySQL慢查询记录,但是不够直观. 下面介绍一款比较直观的工具来统计分析MySQL慢查询记录anemometer. 在使用之前需要安装pe ...

  4. MySQL 查询练习记录

    MySQL 查询练习记录 最近在复习mysql,在b站上找了一个感觉还不错的视频,把视频中查询练习相关的内容记录了下来,以便自己日后查阅和复习. 视频连接:https://www.bilibili.c ...

  5. 怎么打开/查看MySQL的SQL记录

    mysql在执行sql的时候会在日志当中记录很多信息,当然包括执行的所有语句.下面以使用navicat for mysql为例,来展示一下如何打开/查看MySQL的SQL记录: 打开navicat f ...

  6. 使用 docker-compose 安装 MySQL 5.5 记录

    使用 docker-compose 安装 MySQL 5.5 记录 安装 Docker-Compose 在 Centos 中安装 Docker 倒是很简单. 但是安装 docker-compose 遇 ...

  7. [MySQL实践] 实践记录

    [MySQL实践] 实践记录 版权2019.5.17更新 MySQL MySQL各版本区别 一.选择的版本 1. MySQL Community Server 社区版本,开源免费,但不提供官方技术支持 ...

  8. 让MySQL为我们记录执行流程

    让MySQL为我们记录执行流程   我们可以开启profiling,让MySQL为我们记录SQL语句的执行流程   查看profiling参数 shell > select @@profilin ...

  9. centos7安装Mysql爬坑记录

    centos7安装Mysql爬坑记录   查看是否已安装 使用下列命令查看是否已经安装过mysql/mariadb/PostgreSQL 如果未安装,不返回任何结果(ECS的centos镜像默认未安装 ...

  10. [MySQL数据库之记录的详细操作:增、改、删、单表查询、多表查询]

    [MySQL数据库之记录的详细操作:增.改.删.单表查询.多表查询] 记录详细操作 增.删.改 增: insert t1(字段1,字段2,字段3) values (值1,值2,值3), (值1,值2, ...

随机推荐

  1. 伪类实现特殊图形,一个span加三角形

    题目如图: 实现思路: 伪类+三边透明的三角形实现 代码: <span class="wei">wei</span> .wei{ display: inli ...

  2. Goodbye Wuxu.B.新年的Dog划分(交互 二分 二分图)

    题目链接 官方题解写得很详细,我竟然看懂了. Subtask1: 暴力的话,猜可以\(2^n\)枚举点集\(A,B\),将除了\(A,B\)之间的边全部删掉,然后询问.一定有至少一组\(A,B\)返回 ...

  3. Python3基础-分数运算

    Python3分数运算 fractions 模块可以被用来执行包含分数的数学运算. 案例 >>> from fractions import Fraction >>> ...

  4. BZOJ4867 : [Ynoi2017]舌尖上的由乃

    首先通过DFS序将原问题转化为序列上区间加.询问区间kth的问题. 考虑分块,设块大小为$K$,每块维护排序过后的$pair(值,编号)$. 对于修改,整块的部分可以直接打标记,而零碎的两块因为本来有 ...

  5. BZOJ2167 : 公交车站

    设$f[i]$表示$i$往上通过一趟公交车能到达的深度最小的祖先,这可以通过将公交车按$lca$深度从小到大排序后用并查集染色得到. 对于每个询问: $1.x==y$ $ans=0$. $2.x$是$ ...

  6. 基于Python Pillow库生成随机验证码

    from PIL import Image from PIL import ImageDraw from PIL import ImageFont import random class ValidC ...

  7. Android requestcode resultcode的作用

    requestcode 一个页面的不同事件,激发不同的函数,startActivityForResult中传入不同的请求码的值以调用下一个界面,在被调用界面结束返回第一个界面时,请求码会自动返回(自动 ...

  8. uestc 猛男搜索26题 by qscqesze

    https://vjudge.net/contest/202940#overview 不断更新

  9. oracle to_char函数使用

    Postgres 格式化函数提供一套有效的工具用于把各种数据类型(日期/时间,int,float,numeric)转换成格式化的字符串以及反过来从格式化的字符串转换成原始的数据类型. 注意:所有格式化 ...

  10. C_求两个日期相隔的天数(闰年)

    #include <stdio.h> #include <math.h> int leap_year(int year){ == || (year%== && ...