十MySQL从入门到高可用架构报错解决

Posted _妙︶"

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了十MySQL从入门到高可用架构报错解决相关的知识,希望对你有一定的参考价值。

1)

报错原因:mysql的socket文件目录不存在。

解决方法:创建MySQL的socket文件目录

mkdir /application/mysql-5.6.38/tmp

2)

报错原因:socket文件目录没有权限

解决方法:给socket文件目录授权mysql用户的权限

chown -R mysql.mysql /application/mysql-5.6.38/

3)

报错原因:没有做初始化

解决方法:做初始化

./mysql_install_db --user=mysql --basedir=/application/mysql --datadir=/application/mysql/data

4)

报错原因:找不到socket文件

解决方法:1. mysql -uroot -poldboy123 -S /tmp/mysql.sock 指定socket文件路径

2.把socket文件放到默认路径下 mv /tmp/mysql.sock /application/mysql/tmp/

5)

报错原因:跳过授权表安全启动导致无法使用权限的设置

解决方法:使用insert,update语句对表进行修改添加用户权限

6)

报错原因:插入数据时,表内有字段含有默认值,必须填写

解决方法:在insert语句中加上对应字段的默认值

7)

报错原因:SQL语句中含有中文字符所以不识别\'localhost\'

解决方法:将中文的标点符号改成英文的

8)

报错原因:设置的共享表空间小于当前共享表空间的大小

#当前共享表空间大小:76M

[root@oldboy data]# du -sh ibdata1

76M ibdata1

#配置文件中共享表空间大小:50M

innodb_data_file_path=ibdata1:50M;ibdata2:50M:autoextend

解决方法:将配置文件中的50M修改为76M即可,然后重启MySQL

报错原因:修改事务的隔离级别RC、RU的时候需要将binlog格式改成row

解决方法:在配置文件的[mysqld]标签下添加一行 binlog_format=row,重启MySQL

报错原因:MySQL配置文件中参数有问题。

解决方法:修改MySQL配置文件中的对应参数。

报错原因:使用操作不当的方式删除了binlog日志

解决方法:重新初始化数据库

报错原因:主从复制过程中master和slave的uuid相同

解决方法:修改uuid文件或者删除uuid文件并重启

vim /application/mysql/data/auto.cnf

[auto]

server-uuid=3ba9b12e-b4e8-11e8-b930-000c29a508b5

或者:

rm -f /application/mysql/data/auto.cnf

重启:

/etc/init.d/mysqld restart

报错原因:从库没有执行change master to 语句,直接start slave;

解决方法:执行change master to语句

报错原因:不认识innodb

解决方法:初始化

报错原因:IO线程连接超时

解决方法:
1.网络 ping

2.端口 telnet tcping

3.用户名、密码 mysql –urep –poldboy123 –h10.0.0.51 –P3309

报错原因:因为做了hosts解析,将ip反向解析成了主机名

解决方法:
1.在所有主机上都相互做解析,grant rep@\'oldboy\'

2.在配置文件中[mysqld]标签下添加一行:skip_name_resolv(跳过反向解析)

以上是关于十MySQL从入门到高可用架构报错解决的主要内容,如果未能解决你的问题,请参考以下文章

亲测可用通过Navicat for MySQL远程连接的时候报错mysql 1130的解决方法

问题排查低版本内核驱动移植到高版本内核中编译报错,部分编译异常记录及解决

问题排查低版本内核驱动移植到高版本内核中编译报错,部分编译异常记录及解决

关于MySQL-MMM架构的一些报错及解决方法

mysql死锁问题分析

k8s实践6:从解决报错开始入门RBAC