长沙快付新闻资讯
您当前的位置是: 首页->技术资讯->做网站系统

阿里云Linux一键安装包出现数据库链接错误的解决方法

首发: 长沙快付 版权所有,未经许可严禁转载
 阿里云Linux一键安装包正常使用一段时间后,就会出现数据库链接错误的提示。
 
环境版本:
mysql:5.5.35
nginx:1.2.5
php:5.4.23
 
重启mysql服务
 
[root@localhost]#server mysqld restart
报错如下:
 
ERROR! MySQL server PID file could not be found!                            
Starting MySQL.. ERROR! The server quit without updating PID file (/alidata/server/mysql/data/AY13******5453Z.pid)
根据提示找到/alidata/server/mysql/data/AY13******5453Z.err的日志如下:
 
150119 09:13:36 mysqld_safe Starting mysqld daemon with databases from /alidata/server/mysql/data
150119  9:13:36 [Note] Plugin 'FEDERATED' is disabled.
150119  9:13:36 InnoDB: The InnoDB memory heap is disabled
150119  9:13:36 InnoDB: Mutexes and rw_locks use GCC atomic builtins
150119  9:13:36 InnoDB: Compressed tables use zlib 1.2.3
150119  9:13:36 InnoDB: Using Linux native AIO
150119  9:13:36 InnoDB: Initializing buffer pool, size = 128.0M
InnoDB: mmap(137363456 bytes) failed; errno 12
150119  9:13:36 InnoDB: Completed initialization of buffer pool
150119  9:13:36 InnoDB: Fatal error: cannot allocate memory for the buffer pool
150119  9:13:36 [ERROR] Plugin 'InnoDB' init function returned error.
150119  9:13:36 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
150119  9:13:36 [ERROR] Unknown/unsupported storage engine: InnoDB
150119  9:13:36 [ERROR] Aborting
 
150119  9:13:36 [Note] /alidata/server/mysql/bin/mysqld: Shutdown complete
150119 09:13:36 mysqld_safe mysqld from pid file /alidata/server/mysql/data/AY13******5453Z.pid ended
查看mysql/data目录下所有文件的权限
 
[root@localhost data]#ll
drwx------ 2 mysql mysql     4096 Jan 14 09:42 35dir
-rw-r----- 1 mysql root    20914 Jan 19 09:20 AY13******5453Z.err
-rw-rw---- 1 mysql mysql        5 Jan 19 09:20 AY13******5453Z.pid
-rw-rw---- 1 mysql mysql 35651584 Jan 19 10:47 ibdata1
-rw-rw---- 1 mysql mysql  5242880 Jan 19 10:47 ib_logfile0
-rw-rw---- 1 mysql mysql  5242880 Jan 16 01:22 ib_logfile1
drwx------ 2 mysql mysql     4096 Jan 14 09:41 lirongyaous
drwx------ 2 mysql mysql     4096 Jan 14 08:58 mysql
-rw-rw---- 1 mysql mysql  4968780 Jan 14 12:56 mysql-bin.000001
-rw-rw---- 1 mysql mysql   264430 Jan 15 01:52 mysql-bin.000002
-rw-rw---- 1 mysql mysql    48392 Jan 15 10:15 mysql-bin.000003
-rw-rw---- 1 mysql mysql   695519 Jan 15 14:51 mysql-bin.000004
-rw-rw---- 1 mysql mysql  1048692 Jan 16 09:45 mysql-bin.000005
-rw-rw---- 1 mysql mysql  1328536 Jan 18 22:20 mysql-bin.000006
-rw-rw---- 1 mysql mysql    49949 Jan 19 09:20 mysql-bin.000007
-rw-rw---- 1 mysql mysql   610158 Jan 19 10:47 mysql-bin.000008
-rw-rw---- 1 mysql mysql      152 Jan 19 09:20 mysql-bin.index
drwx------ 2 mysql mysql     4096 Jan 14 08:58 performance_schema
drwxr-xr-x 2 mysql mysql     4096 Jan 14 08:58 test
整体赋予data目录mysql权限
 
[root@localhost mysql]#chown -R mysql:mysql data
如果重启服务还是不行就重启机器
服务重启
 
[root@localhost]#server mysqld restart
机器重启
 
[root@localhost]#reboot
更多相关问题解参考
 
1.可能是/usr/local/mysql/data/rekfan.pid文件没有写的权限
解决方法 :给予权限,执行 “chown -R mysql:mysql /var/data” “chmod -R 755 /usr/local/mysql/data”  然后重新启动mysqld!
 
2.可能进程里已经存在mysql进程
解决方法:用命令“ps -ef|grep mysqld”查看是否有mysqld进程,如果有使用“kill -9  进程号”杀死,然后重新启动mysqld!
 
3.可能是第二次在机器上安装mysql,有残余数据影响了服务的启动。
解决方法:去mysql的数据目录/data看看,如果存在mysql-bin.index,就赶快把它删除掉吧,它就是罪魁祸首了。本人就是使用第三条方法解决的 !http://blog.rekfan.com/?p=186
 
4.mysql在启动时没有指定配置文件时会使用/etc/my.cnf配置文件,请打开这个文件查看在[mysqld]节下有没有指定数据目录(datadir)。
解决方法:请在[mysqld]下设置这一行:datadir = /usr/local/mysql/data
 
5.skip-federated字段问题
解决方法:检查一下/etc/my.cnf文件中有没有没被注释掉的skip-federated字段,如果有就立即注释掉吧。
 
6.错误日志目录不存在
解决方法:使用“chown” “chmod”命令赋予mysql所有者及权限
 
7.selinux惹的祸,如果是centos系统,默认会开启selinux
解决方法:关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器试试。
  • 最新签约客户
  • 最新上线网站
为什么选择长沙快付公司?

8年专业做网站经验
帮助您解决各种需求,并得到满意方案

效果满意后付款
预付30%定金,效果让您满意后,付全款

资深用户体验设计师
秉承"一切以用户价值为依归"理念,重视用户体验,专为企业需求进行定制

采用国际标准结构建站
DIV+CSS国际标准构建网页,可有效提高网站访问速度、提高网站页面的可维护

实现网络营销[SEO]最大化
网站程序中融入SEO,有效降低企业成本

分享到: