博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySQL下perror工具查看System Error Code信息
阅读量:6842 次
发布时间:2019-06-26

本文共 2508 字,大约阅读时间需要 8 分钟。

 

 在MySQL数据库的维护过程中,我们有时候会在MySQL的错误日志文件中看到一些关于Operating system error的错误信息,例如在MySQL的错误日志里面,有时候会看到关于

 

InnoDB: Operating system error number 0.

InnoDB: Check that your OS and file system support files of this size.

InnoDB: Check also that the disk is not full or a disk quota exceeded.

 

 

InnoDB: Operating system error number 5.

...........................................

 

 那么这些System Error Code在Linux下分别代表什么意思呢?其实如果遇到错误日志里有这些对应的代码,使用MySQL自带的命令工具perror查看一下具体信息即可。非常简单方便。

 

[root@DB-Server ~]# perror 2;

OS error code   2:  No such file or directory

[root@DB-Server ~]# perror 3;

OS error code   3:  No such process

[root@DB-Server ~]# perror 4;

OS error code   4:  Interrupted system call

[root@DB-Server ~]# perror 5;

OS error code   5:  Input/output error

[root@DB-Server ~]#

 

如果你要查看一个范围的Operating system error,可以使用下面命令

 

[root@DB-Server ~]# perror `seq 0 10`

OS error code   0:  Success

OS error code   1:  Operation not permitted

OS error code   2:  No such file or directory

OS error code   3:  No such process

OS error code   4:  Interrupted system call

OS error code   5:  Input/output error

OS error code   6:  No such device or address

OS error code   7:  Argument list too long

OS error code   8:  Exec format error

OS error code   9:  Bad file descriptor

OS error code  10:  No child processes

[root@DB-Server ~]#

 

  如果是集群,那么可以shell> perror --ndb errorcode查看, 下面表格是关于Linux平台下通用的System Error Code列表,如下所示,完全没有必要硬性记住。遇到查看即可。

 

 

Number

Macro

Description

1

EPERM

Operation not permitted

2

ENOENT

No such file or directory

3

ESRCH

No such process

4

EINTR

Interrupted system call

5

EIO

I/O error

6

ENXIO

No such device or address

7

E2BIG

Arg list too long

8

ENOEXEC

Exec format error

9

EBADF

Bad file number

10

ECHILD

No child processes

11

EAGAIN

Try again

12

ENOMEM

Out of memory

13

EACCES

Permission denied

14

EFAULT

Bad address

15

ENOTBLK

Block device required

16

EBUSY

Device or resource busy

17

EEXIST

File exists

18

EXDEV

Cross-device link

19

ENODEV

No such device

20

ENOTDIR

Not a directory

21

EISDIR

Is a directory

22

EINVAL

Invalid argument

23

ENFILE

File table overflow

24

EMFILE

Too many open files

25

ENOTTY

Inappropriate ioctl for device

26

ETXTBSY

Text file busy

27

EFBIG

File too large

28

ENOSPC

No space left on device

29

ESPIPE

Illegal seek

30

EROFS

Read-only file system

31

EMLINK

Too many links

 

 

如果是Windows平台,那么也可以使用下面命令查看具体的System Error Code信息,另外,Windows平台下的System Error Code也远比Linux平台下要多,遇到了这些System Error Code,使用命令查看即可。

 

perror.exe 2

 

 

perror `perl -e "print join ' ',1..100"`

 

 

 

 

参考资料

 

http://doc.docs.sk/mysql-refman-5.5/operating-system-error-codes.html

转载地址:http://iwdul.baihongyu.com/

你可能感兴趣的文章
vscode的 ESLINT 检查vue,js文件配置说明
查看>>
实现Div层里的文字垂直居中的方法
查看>>
我的友情链接
查看>>
谁说使用Python你就写不出混乱的代码?
查看>>
网桥和交换机的区别
查看>>
使用Raspcontrol在线查看树莓派各项情况
查看>>
超强JIRA流程图
查看>>
java 导出excel表格
查看>>
android好帖子
查看>>
使用EqualsBuilder和HashCodeBuilder重写equals、hashCode方法
查看>>
合理信息安全设备的选择 选型依据分析
查看>>
操作Visual Studio 2010中的SQL Server数据库比较工具
查看>>
partition underscore
查看>>
component develope
查看>>
通向架构师的道路(二)--之apache tomcat https应用
查看>>
理解会话
查看>>
学习Linux决心书
查看>>
华为使用命令
查看>>
二、Python'核心编程(数字)
查看>>
javamail正文乱码
查看>>