阿里云mysql启动卡死解决方案与重装后数据恢复

由于重启服务器导致MySQL数据库启动不了,折腾了一天弄好了,记录下经验:

环境 :centos7  MySQL5.6

本文包括:

    一、启动MySQL是卡死不动的排查方式。

    二、完全卸载MySQL的方法

    三、阿里云上安装配置MySQL

    四、MySQL重新安装后数据恢复

一、启动MySQL是卡死不动的排查方式。

启动mysql卡死不动

[root@~]# service mysqld start

Redirecting to /bin/systemctl start mysqld.service

排查1、之前好使,突然不好使了。

[root@~]#cd /var/lib/mysql

[root@~]#ls -l

-rw-rw---- 1 mysql mysql 56 Jul 30 19:03 auto.cnf

-rw-rw---- 1 root  root  79691776 Jul 31 00:36 ibdata1

-rw-rw---- 1 mysql mysql 50331648 Jul 31 00:36 ib_logfile0

-rw-rw---- 1 mysql mysql 50331648 Jul 31 00:34 ib_logfile1

drwx------ 2 mysql mysql    4096 Jul 30 19:03 mysql

srwxrwxrwx 1 mysql mysql        0 Jul 31 00:36 mysql.sock

drwx------ 2 mysql mysql    4096 Jul 30 19:03 performance_schema

1、正常情况下用户权限都是 ‘mysql’ ,异常退出后可能就变成‘root’了

授予mysql权限 chown -R mysql.mysql /var/run/mysqld/

执行后再ls -l 看下,没有更改成功就用 chown  mysql.mysql <文件名> 单独配置一遍,文件夹里边的文件不要忘记看。

2、注意/var/lib/mysql目录中的权限都是文件660(-rw-rw---- ),文件夹是700(drwx------),如果不对要用chmod 660 <文件名>      chmod 700 <文件名>  对文件或文件夹进行权限管理

发现上述两个问题并改正后,再重启数据库试试,还是不行就继续往下排查。

排查2:根据log文件排查

    [root@~]#cat /var/log/mysqld.log (默认mysql日志的安装路径)

    如果你只想看到错误信息,可以使用cat /var/log/mysqld.log | grep ‘ERROR’命令查看

    我在log中发现一个问题不认识 default-character-set=utf8

    原本想在MySQL 配置文件/etc/my.cnf中加入default-character-set=utf8  将数据库字符集设置为 utf8,结果不能启动了,注释掉后一切正常。

查看/etc/my.cnf 文件中如果有字符集设置的语句不妨先注释掉再service mysqld start试试

  排查3:setenforce 0  #关闭selinux

selinux可能开启导致权限不够,这玩意干嘛的我也不会,先关掉再说。

二、完全卸载MySQL的方法

上边的方法解决不了了,可以考虑重新安装mysql.

1、备份

/var/lib/mysql文件夹中的数据除了mysql文件夹全部拷贝出去,留着恢复。

2、完全卸载

[root@~]#yum remove mysql mysql-server

[root@~]#find / -name mysql 将找到的相关东西delete掉;

[root@~]#mv /var/lib/mysql /var/lib/mysql_old_backup#或者直接删除

[root@~]#rpm -qa|grep mysql(查询出来的全部yum remove掉)

三、阿里云上安装配置MySQL(系统:阿里云centos7)

建议按照自己之前的方式安装,保持两次的版本一样,避免数据恢复失败的可能。

[root@~]#rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm    ####新增yum源

[root@~]# yum repolist enabled | grep "mysql.*-community.*"   #####查看可用的mysql版本

[root@~]# yum -y install mysql-community-server 

[root@~]# systemctl enable mysqld #######启动mysql服务进程

[root@~]# systemctl start mysqld #######配置mysql(设置密码等)

[root@~]# mysql_secure_installation #######配置初始信息

配置步骤

Enter current password for root (enter for none):<–初次运行直接回车

OK, successfully used password, moving on...

Set root password? [Y/n] Y<– 是否设置root用户密码,输入y并回车或直接回车

New password: <– 设置root用户的密码

Re-enter new password: <– 再输入一次你设置的密码

Password updated successfully!

Reloading privilege tables..

... Success!

Remove anonymous users? [Y/n] <– 是否删除匿名用户,生产环境建议删除,所以直接回车

... Success!

Disallow root login remotely? [Y/n] <–是否禁止root远程登录,根据自己的需求选择Y/n并回车,建议禁止

... Success!

Remove test database and access to it? [Y/n] <– 是否删除test数据库,直接回车

- Dropping test database...

ERROR 1008 (HY000) at line 1: Can't drop database 'test'; database doesn't exist

... Failed!  Not critical, keep moving...

- Removing privileges on test database...

... Success!

Reload privilege tables now? [Y/n]<– 是否重新加载权限表,直接回车

... Success!

如果需要外网可以访问需要再做如下设置:授权用户可以从远程登陆

[root@~]# mysql -u root -p  ###进入mysql

Enter password:        ###输入刚刚设置的密码

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 22

Server version: 5.6.39 MySQL Community Server (GPL)

。。。。。。

mysql> use mysql;     ####使用mysql数据库

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A

Database changed

mysql> select host,user,password from user;      #####查看user表

+-----------+------+-------------------------------------------+

| host      | user | password                                  |

+-----------+------+-------------------------------------------+

| localhost | root | *80A84E4759FEC49969DA411756A51BB3FEC9B72C |

| 127.0.0.1 | root | *80A84E4759FEC49969DA411756A51BB3FEC9B72C |

| ::1      | root | *80A84E4759FEC49969DA411756A51BB3FEC9B72C |

+-----------+------+-------------------------------------------+

3 rows in set (0.00 sec)

可以看到在user表中已创建的root用户。host字段表示登录的主机,其值可以用IP,也可用主机名,

  (1)有时想用本地IP登录,那么可以将以上的Host值改为自己的Ip即可。

实现远程连接(授权法)

  将host字段的值改为%就表示在任何客户端机器上能以root用户登录到mysql服务器,建议在开发时设为%。 

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

  将权限改为ALL PRIVILEGES

//修改访问权限,让其他计算机也能访问

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'yourpassword ' WITH GRANT OPTION;              -->yourpassword 此处输入自己设置的密码

Query OK, 0 rows affected (0.00 sec)

mysql> select host,user,password from user;

+-----------+------+-------------------------------------------+

| host      | user | password                                  |

+-----------+------+-------------------------------------------+

| %        | root | *D4CECBA84F0A507325CD8AA82FCDE04EA8BE56B0 |

| 127.0.0.1 | root | *80A84E4759FEC49969DA411756A51BB3FEC9B72C |

| ::1      | root | *80A84E4759FEC49969DA411756A51BB3FEC9B72C |

+-----------+------+-------------------------------------------+

3 rows in set (0.00 sec)

*在控制台中 安全组配置  添加 3306 端口,不然外网不能访问端口

四、MySQL重新安装后数据恢复

步骤前边都写了就不重复了。

1,、把卸载前备份的数据替换掉/var/lib/mysql 文件夹中的数据。

2、按照 步骤‘排查1’中的方式将文件的权限重新设置对。然后重启服务器,就可以用phpmyadmin查看了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,242评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,769评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,484评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,133评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,007评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,080评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,496评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,190评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,464评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,549评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,330评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,205评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,567评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,889评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,160评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,475评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,650评论 2 335

推荐阅读更多精彩内容