文档章节

在linux下面安装MySQL5.6管理帐号安装失败的解决方法

xpbug
 xpbug
发布于 2013/05/21 19:20
字数 1058
阅读 378
收藏 8

#程序员薪资揭榜#你做程序员几年了?月薪多少?发量还在么?>>>

这不算什么文章,只是为了记录今天下午我无缘无故花费的时间。避免下次浪费同样的时间,我还是把今天遇到的问题和解决方法记录下来吧。

首先,今天的问题可以在mysql bug中找到: http://bugs.mysql.com/bug.php?id=63085 

**************************************************************************************************************************

MySQL安装例子 http://opensourcedbms.com/dbms/installing-mysql-5-6-on-cent-os-6-3-redhat-el6-fedora/ 

conflicts with file from package mysql-libs-5.1.52-1.el6_0.1.x86_64

最新解决方法,更新于2014,4,22

之前的解决方法会使得依赖于mysql-libs的程序无法正常工作。现在oracle提供了新的rpm

MySQL-shared-compat, 安装此包,可以替换掉mysql-libs,并兼容于mysql-server和mysql-client。

rpm -Uvh MySQL-shared-compat-5.6.17-1.el6.x86_64.rpm

**************************************************************************************************************************

MySQL其实并不复杂,但自从某一个版本开始,MySQL的安装变得越来越复杂。不明白他们为什么这么做,是因为被oracle收购的原因么?

我用的是redhat,安装的MySQL版本5.6。安装文件为rpm包。简单说一下正常的MySQL rpm包的安装流程:

  1. redhat一般会自带一个mysql-libs,首先要卸载它,否则安装会冲突。
    如果有yum,可以运行

    >yum list mysql-client
    >yum list mysql-server

    来找出安装的mysql。
    运行

    >yum remove package-name

    来删除mysql的包。

  2. 如果没有yum,可以使用

    >rpm -qal | grep mysql

    列出已经安装的rpm,使用

    >rpm -e package-name

    来删除。

  3. 最后运行命令

    >whereis mysql

    来查看还有没有mysql的目录,使用rm命令删除所有遗留目录。

  4. 使用

    >rpm -ivh mysql-package-name

    来安装Mysql。 一般情况必须装的两个包是mysql-server和mysql-client。 mysql-client提供了mysql和mysqladmin等查询和管理工具。

  5. rpm安装会自动调用mysql_install_db命令,为我们populate数据库用户表。这张表存在数据库mysql中,名字叫user. rpm安装会自动为你创建root用户,并随即产生一个密码,密码存放在/root/.mysql_secret中。

  6. 接下来就是启动mysql server, 可以使用以下几种命令:

    >mysqld -u mysql
    >/etc/init.d/mysql start
  7. 需要使用root来连接数据库,或者使用mysqladmin来管理帐户。然后重设你的密码。并创建其他用户。每个用户会有多种登陆方式,remote, localhost等等。你需要为你的帐户制定各种登陆方式以及相应的密码。

  8. 至此,你的mysql就配置完成了。

接下来说我遇到的问题。这个问题费了我不少时间。

当我做完上面的第4步以后,执行第5步,发现我无论用什么帐户,都无法登陆到mysql中去,使用mysqladmin也必须用root登陆。所以我的root是一个无效存在。/root/.mysql_secret里面的密码倒是存在。这说明,rpm安装过程中,mysql_install_db出现了问题,可能是bug。我卸载了重装,也无法解决问题。于是乎,我只能启动Mysql的安全模式,去查看user表里面到底有没有用户。

  1. 启动mysql安全模式。

    #停止mysql : 
    >/etc/init.d/mysql stop
    #启动安全模式:
    >mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
  2. 连接mysql。以上的模式下,mysql不会检查用户密码。你可以直接运行mysql就能连接。

  3. 查看user表。运行

    mysql>use mysql;
    mysql>select * from user;

    我发现这张表里面没有任何数据。这验证了我之前的想法,用户并没有被populate进来。怎么办?只能自己给它创建一个用户了。 

  4. 创建root用户:

    mysql>INSERT INTO user VALUES('localhost','root',password('root'),'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','Y','','','','','0','0','0','0','','','N');

    分别要注意4个值,第一行的3个,和最后一行的最后一个值。第一行3个分别是用户的方法方式,%代表任意host,也可以使用ip。最后一个值"N",代表你的password是否过期,如果过期,你在登陆的时候你需要重设密码。

  5. 至此,你有了一个root帐号。关闭安全模式,启动正常模式,用root登陆进mysql, 接下来你就回归正常的流程的第7步了。

完毕。


© 著作权归作者所有

上一篇: TABLE与DIV的取舍
下一篇: httpclient post https
xpbug
粉丝 304
博文 101
码字总数 124566
作品 0
浦东
程序员
私信 提问
加载中

评论(0)

虚拟机中使用centos-----3(端口开放mysql安装)

上次已经使用ifconfig命令看到了ip地址,并且通过xshell成功连接上linux 我们现在需要安装mysql(以mysql来完成端口开放), 1、下载(关于下载安装此处借鉴http://www.cnblogs.com/bookwed/p/...

什么神奇什么c
2017/11/01
23
0
Jenkins配置Linux节点,通过ssh方式在Linux节点自动拉取github代码并执行

Jenkins可以配置Windows/Linux/等节点,这里简单介绍如何通过SSH配置Linux结点 一、安装SSH插件 一般安装Jenkins时,默认安装建议插件时,会自动安装。如果没有请自行安装。 SSH Credential...

osc_6ruay563
01/14
3
0
centos 下安装 mysql 5.6

记录一下自己在centos5.5 上安装mysql5.6.10的过程。 安装各种依赖软件包: 安装gcc编译器 yum -y install gccyum -y install gcc-c++ 2. 安装cmake (因为mysql5.6 更改了安装方式由之前的c...

_空谷足音_
2013/08/29
7.5K
0
centos同时运行mysql5.6和mysql5.7

centos同时运行mysql5.6和mysql5.7 一、准备 从mysql官网下载mysql5.6和mysql5.7 关闭防火墙,关闭selinux 创建mysql用户 ~]# useradd mysql 二、安装 先安装mysql5.6 1.解压,并改名 ~]# ta...

520的罗
2018/06/28
0
0
CentOS安装iRedMail web邮件服务器

中文名为“艾瑞得邮件”,由 rhms 项目 更名而来。是针对 Red Hat(R) Enterprise Linux 和 CentOS 设计的邮件服务器解决方案,是在操作系统安装好后使用的一套 shell 脚本,用于快速部署一套...

icheer
2013/11/23
254
0

没有更多内容

加载失败,请刷新页面

加载更多

比较好用的自媒体分发工具是哪个?

正是源于互联网生态的健康发展,从15年开始到现在,自媒体文化产业特别有关注度,其品牌形象鲜明、优秀的转化能力的数不胜数的亮点,故而吸引着数不清的创作者,而为了达到更出彩的播放量,这...

易媒助手
今天
38
0
idea2020.1 pojie

前几天最新版的idea2020.1终于发布了,它有多香相信小伙伴们已经有所耳闻。现在就拿出来分享给小伙伴们。   所需要的的东西放在这里了,同时里面也放了一个idea2020.1,小伙伴可以选择性的...

我喜欢你有用吗__
今天
32
0
从企业微信机器人到小爱同学,用 Serverless 实现生活智能化!

通过定时触发器,可以简单快速地定制一个企业微信机器人。我们可以用它来实现喝水、吃饭提醒等小功能,还能实现定时推送新闻、天气,甚至是监控告警的小功能。 使用企业微信机器人 在企业微信...

腾讯云Serverless
今天
32
0
socket编程基础,从了解到实现

java生下来一开始就是为了计算机之间的通信,因此这篇文章也将开始介绍一下java使用socket进行计算机之间的通信,在上一篇文章中已经对网络通信方面的基础知识进行了总结,这篇文章将通过代码...

虹越云霄
今天
41
0
Spring Enable***功能

spring博大精深,衍生出了两大系列:spring boot 和sping cloud快速业务开发模式。 我们进行具体开发时,经常看到这样以Enable*开头的注解,如图 等等好多例子。。。框架自带的Enable* @En...

董广明
今天
41
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部