mysql报错解决

问题描述:启动MySQL后,出现连接不上,报 [ERROR] InnoDB: Unable to lock ./ibdata1, error: 11
[root@mysql01 ~]# service mysql start
Starting MySQL                                             [  OK  ]
[root@mysql01 ~]# mysql -uroot -poracle
Warning: Using a password on the command line interface can be insecure.
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
[root@mysql01 ~]# ll /var/lib/mysql/mysql.sock
ls: cannot access /var/lib/mysql/mysql.sock: No such file or directory
说明:
mysqld.sock是mysql启动以后自动生成的文件,关闭MySQL服务后,这个文件又会被删除。如果MySQL启动异常,就有可能不生成这个文件,登录的时候就会出现你这个错误。
[root@mysql01 ~]# cd /var/lib/mysql
[root@mysql01 mysql]# ls
auto.cnf   ib_logfile0  mysql01.err          RPM_UPGRADE_MARKER-LAST
binarylog  ib_logfile1  performance_schema   test
ibdata1    mysql        RPM_UPGRADE_HISTORY
[root@mysql01 mysql]# vi mysql01.err 
错误日志报错如下:
2017-06-04 04:08:47 2835  
2017-06-04 04:08:47 2835 [Note] InnoDB: Check that you do not already have another mysqld process using the same InnoDB data or log files.

分析:
1、磁盘空间目录不足
2、ibdata1 文件被其他的进程占用
3、 等

解决过程:
1、 -- 查看磁盘空间情况
[root@mysql01 ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3        35G  7.8G   26G  24% /
tmpfs           699M   72K  699M   1% /dev/shm
/dev/sda1       2.9G  4.5M  2.7G   1% /tmp
2、 --InnoDB: Check that you do not already have another mysqld process using the same InnoDB data or log files.
已经指出其他的线程启动已经在运行无法再次创建相关的读文件进程的权限,也就是说,现有的ibddata文件已经有人读取了,无法再次启动!
-- 查看系统 mysql 相关进程
[root@mysql01 ~]# ps aux |grep mysql*
root       1742  0.0  0.0 108336   552 ?        S    03:59   0:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/mysql01.pid
mysql      1930  0.2 37.8 1170956 541948 ?      Sl   03:59   0:03 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/lib/mysql/mysql01.err --pid-file=/var/lib/mysql/mysql01.pid --port=3306
root       3117  0.0  0.0 103312   876 pts/2    S+   04:29   0:00 grep mysql*
-- kill -9 杀掉
[root@mysql01 ~]# kill -9 1930
[root@mysql01 ~]# ps aux |grep mysql*
root       3186  0.0  0.0 103308   852 pts/2    S+   04:29   0:00 grep mysql*
-- 启动
[root@mysql01 ~]# service mysql start
Starting MySQL..                                           [  OK  ]
[root@mysql01 ~]# mysql -uroot -poracle
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> 
说明:恢复正常

2017-09-12 19:15:49 3952 [ERROR] Do you already have another mysqld server running on port: 3307 ?
2017-09-12 19:15:49 3952 [ERROR] Aborting
解决方法
[root@localhost data1]# ps aux | grep mysql
root 2974 0.0 0.0 106196 1532 pts/0 S 19:03 0:00 /bin/sh /usr/bin/mysqld_safe --defaults-file=/etc/my1.cnf --skip-grant-tables
mysql 3160 0.2 19.1 1014140 456708 pts/0 Sl 19:03 0:02 /usr/sbin/mysqld --defaults-file=/etc/my1.cnf --basedir=/usr --datadir=/data --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --skip-grant-tables --log-error=/data/mysqld.log --pid-file=/data/mysqld.pid --socket=/data/mysql.sock --port=3307
root 3997 0.0 0.0 103244 864 pts/0 S+ 19:21 0:00 grep mysql
[root@localhost data1]# kill -9 3160


问题:如何形成读写分离,分库分表、索引


什么是临界资源
latch 绝大多数是用来保护链的,Latch 争用表现为 cpu 繁忙。
instance 是什么

为什么innodb_autoinc_lock_mode的0模式不能保证连续
全表扫描一定会产生表锁吗?
参数 log_output 指定了慢查询输出的格式, 默认是 file,可以将他设置为
table,但是不建议,因为会影响性能。set global log_output='table',为什么会影响性能?
xtrabackup做恢复会关闭数据库吗?

主从复制时,Slave_IO_Running是connect,哪里出错了?

实习数据库dba什么时候是招聘旺季?




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值