曾经在windows 下安装mysql 没怎么出现过问题。而在linux下安装的时候出现了一些问题,昨天在windows 安装的时候也出现了1045 错误。就个人经历来看这个问题就是 root用户password的问题,所以将解决的方式总结例如以下:

一、mysql登录报 1045 错误

mysqladmin: connect to server at 'localhost' failed

error: 'Access denied for user 'root'@'localhost' (using password: YES)'

我们看到上面的这个错误就是说 user 为root host为localhost的password有问题,所以我们就要看看 mysql数据库中user表中user为root,host为localhost的这个用户的password。

解决的方法:破解mysqlpassword

1、 service mysqld stop  

// 停止mysql服务



2、mysqld_safe --skip-grant-tables

// 在mysql的配置文件假设是linux(centos)则在etc/my.cnf配置文件的mysqld_safe 下天加入skip-grant-tables,假设在windows下则在安装文件夹下的my.ini 配置文件的mysqld 下加入  skip-grant-tables, skip-grant-tables是跳过授权表,这样配置之后保存
关闭,又一次启动mysql服务



3、 mysql -uroot -p  回车

// 这样就进来了,这里有两个问题。也是我遇到的两种情况,一种是user表中有user为root的用户。一种是没有,假设有则进行例如以下处理:

(1)、use mysql;

// 使用mysql数据库

(2)、 delete  from user where host="localhost" and user=" ";

// 将host为localhost下的user为空的用户都删了。事实上也能够把这里localhost改成 % 免得以后连接的时候连接不了,只是是后话在这里该不该都能够。

(3)、 update user set password=PASSWORD("newpass") where user="root";

// 假设你查询一下你会发现 mysql中的password是加密保存的,所以改动password不能向平时的sql一样 而要使用password("新password")keyword来改动password。新password为password中的字符。

(4)、 flush tables;

//数据刷到磁盘

(5)、 flush privileges;

//更新权限

(6)、quit

//退出

(7)、将配置文件里 skip-grant-tables 凝视/删掉 保存

(8)、service mysqld restart

// 再次启动服务   mysql -uroot -p新password回车 。这样应该能够了

二、 接着上面3、mysql -uroot -p  回车 进入之后use表中没数据,即创建root用户做例如以下处理:

第一种情况,就是user中有root用户可是连接不上是在windows下遇到的,而user中什么都没有是在linux(centos) 下遇到的,详细处理例如以下:

在linux下安装了mysql之后出现错误,刚開始以为就是第一种这样的情况,网上大多也都是这类文章于是就依照这篇文章进行了改动:linux下mysql 初次登陆改动password  改动之后应该没错,但再次启动服务root登录还是不行,以下的就是出现的问题和解决过程:

1、查询看有没有user 为root的用户,或这说user中有没实用户。

mysqld_safe--skip-grant-tables&mysql-uroot
mysql

mysql> select * from user;

Empty set (0.00 sec)

mysql> select USER();

+--------+

| USER()|

+--------+

| root@ |

+--------+

1 row in set (0.00 sec)

结果是没有root用户,user表里面是空的。还是第一次遇到这样的问题的。

2、插入用户信息到 user表

因为 mysqld_safe --skip-grant-tables里面是不能用grant的,于是想到了手动insert插入root用户:

**为了大家方便这里提供一些说明:第一个值是host,第二个为user这两项是必填项,password("my_password")这里进行密码的设置。MY_PASSWORD 就是新设的密码 ,而'Y'有28个。之后有1个enum和3个blob 能够为空,也就是这里的4个空字符,int类型有4个,默认值为0

INSERTINTO user VALUES('%','root',password('MY_PASSWORD'),'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0)

这里要基本的是第3个字段password处要用password('password')。由于mysql中password是要经过编码的,不是直接字符串保存的。

3、接着在杀掉全部mysql进程。之后正常重新启动mysql,就可以用root用户登录

到眼下个人就遇到的问题总的就这两种,希望对你实用!!

windows linux 下安装mysql 报1045 等错误的更多相关文章

  1. linux下安装php报错configure: error: Cannot find MySQL header files under /usr/include/mysql.

    linux下安装php报错configure: error: Cannot find MySQL header files under /usr/include/mysql. 2013-03-04 1 ...

  2. 【云服务器部署】---Linux下安装MySQL

    [云服务器部署]---Linux下安装MySQL 有关如何阿里云ECS建网站,推荐一片文章,我是是通过这篇文章安装tomcat和jdk的 网址:阿里云ECS建网站(建站)超详细全套完整图文教程! 注意 ...

  3. linux下安装mysql问题总结(一)mysqld_safe mysqld from pid file /usr/local/mysql/data/mysql.pid ended

    linux下安装mysql数据库 linux版本:CentOS release 6.8 (Final) mysql版本:mysql-5.7.16-linux-glibc2.5-x86_64.tar.g ...

  4. Linux下安装mysql(1)(CentOS)

    标题是(1)也就是说这次是基础安装,这种方式安装,没有组的创建,权限管理,配置文件更改等,仅仅是最基本的安装,适合第一次在linux上安装mysql的新手 1.准备好安装包(Linux-Generic ...

  5. Linux 下安装mysql 5.7

    Linux 下安装mysql 5.7 本人首次安装时按照菜鸟教程的步骤一步一步来的,结果意外的是 装成5.6了,而且各种无厘头的问题,例如无法启动... 本文参照 大佬:‘这个名字想了很久~’ 的&l ...

  6. Linux下安装mysql(2) 及常见问题解决(CentOS)

    上一篇讲了基本的安装,这篇姑且算作进阶吧 链接Linux下安装mysql(1) 1.准备好mysql的rpm安装包 2.解压并进入usr/local/mysql 3.先执行useradd mysql( ...

  7. Linux下安装mysql教程

    Linux下安装mysql  MySQL官网:https://dev.mysql.com/downloads/mysql/ 到mysql官网下载mysql编译好的二进制安装包,在下载页面Select ...

  8. Windows系统下安装MySQL 8.0.11数据库

    MySQL数据库是常用的数据库之一,而且该数据库开源免费,所以很多公司在使用.本文记录如何在Windows系统下安装MySQL数据库,本次安装的版本号为8.0.11,这个版本是当前的最新版本,据宣传, ...

  9. Linux 下安装Python报错:zlib not available

    问题描述: 在Linux下安装Python时出现一个错误:zipimport.ZipImportError: can't decompress data; zlib not available 详细错 ...

随机推荐

  1. redis实现分布式锁工具类 灰常好用

    public interface RedisDistributionLock { /** * 加锁成功,返回加锁时间 * @param lockKey * @param threadName * @r ...

  2. 搭建samba 共享openstack开发环境

    centos7.2 openstack环境为allinone 模式,这样跑代码好处理 安装smb [root@controller ~]# yum install -y samba samba-cli ...

  3. 【BZOJ 2656】2656: [Zjoi2012]数列(sequence) (高精度)

    2656: [Zjoi2012]数列(sequence) Time Limit: 2 Sec  Memory Limit: 128 MBSubmit: 1499  Solved: 786 Descri ...

  4. QT学习笔记1:VS2015配置QT5.11

    由于工作关系,我又接触到了QT,在之前写过一篇博客是 在vs2017下配置openCV,当时用的是2015做的示范,现在就继续记录一下在VS2015下配置QT吧(VS2017配置是一样的) 第一部分: ...

  5. 51nod1423 最大二"货" 单调栈

    枚举每个点作为次大值,用单调栈处理出左边 / 右边第一个比它大的数,直接回答 复杂度$O(n)$ #include <cstdio> #include <cstring> #i ...

  6. POJ 1509 Glass Beads 后缀自动机 模板 字符串的最小表示

    http://poj.org/problem?id=1509 后缀自动机其实就是一个压缩储存空间时间(对节点重复利用)的储存所有一个字符串所有子串的trie树,如果想不起来长什么样子可以百度一下找个图 ...

  7. HDU 4611 Balls Rearrangement 数学

    Balls Rearrangement 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=4611 Description Bob has N balls ...

  8. PHP简单利用 token 防止表单重复提交

    <?php /* * 隐藏一个可变的token,每次提交都需要和服务器校对 */ session_start(); function set_token() { $_SESSION['token ...

  9. Marvell w8782 sdio wifi AP模式设置

    http://blog.csdn.net/junllee/article/details/8895908 w8782工作在station模式一切正常,于是想试试AP模式(master mode): A ...

  10. 谈谈SQL server的 worker threads-----微软亚太区数据库技术支持组 官方博客

    https://blogs.msdn.microsoft.com/apgcdsd/2012/11/27/sql-server-worker-threads/