阿里云服务器重启后mysql不能启动的问题
环境:阿里云ECS服务器上,Ubuntu linux 12.04,64位版。MySQL 5.1.
首先查看/etc/rc.local,可以看到Ubuntu通过/etc/init.d/mysqld脚本启动mysql服务:
/etc/mysqld start
这个脚本是安装时从/alidata/server/mysql/目录(mysql安装目录)拷贝过来的,没问题。
但是在执行这个脚本时,会调用/alidata/server/mysql/bin/my_print_defaults,
将输出内容交给脚本函数parse_serverarguments()解析,
得到$basedir, $bindir, $datadir这几个启动目录。
问题就出在执行my_print_defaults上。
通过执行/alidata/server/mysql/bin/my_print_defaults --help,可以看到它从以下几个目录读mysql配置:
- /etc/my.cnf
- /etc/mysql/my.cnf
- /alidata/server/mysql/etc/my.cnf
- ~/.my.cnf
后面两个路径不存在,所以只会读取前两个文件的内容。
/etc/my.cnf是安装时从/alidata目录拷过来的,没有问题。
/etc/mysql/my.cnf却是ubuntu缺省存在的,一读,就把前面的覆盖了。
所以删除/etc/mysql目录,执行/etc/init.d/mysqld restart,就OK了。
[后记]
晚上时候,同事报MySQL又启动不了。错误日志:
/alidata/server/mysql/libexec/mysqld: File '/var/log/mysql/mysql-bin.index' not found (Errcode: 13)
网上搜到文章说”Errorcode:13“是目录权限问题而这个文件是存在的!mysql用户也有读写权限。
尝试给/var/log/mysql目录权限从0755改成0775,给mysql用户组也加了写权限,现在的权限是:
drwxrwxr-x 2 mysql mysql 4096 Oct 16 23:00 mysql/
继续启动MySQL,失败,但错误日志已经从刚才的变成了这个(说明mysql组也需要写权限,难道启动mysql需要其他mysql组用户?):
/alidata/server/mysql/libexec/mysqld: File './mysql-bin.000032' not found (Errcode: 2)
继续搜,在这里找到了方法,编辑/var/log/mysql/mysql-bin.index,删除其中的一行内容:
mysql-bin.000032
再次启动MySQL,成功。
阿里云服务器重启后mysql不能启动的问题的更多相关文章
- 在阿里云服务器上安装完成并启动Tomcat后,通过http不能访问--解决办法
在阿里云服务器上安装完成并启动Tomcat后,通过http不能访问的原因是阿里云平台为了安全设置了安全组策略,必须我们授权的端口,其他计算机才能通过http访问 解决办法:(这里以阿里轻量应用服务器为 ...
- 阿里云服务器上安装mysql的心路历程(博友们进来看看哦)
在阿里云花了100买了一台云服务器,配置如下: CPU: 1核 内存: 512MB 数据盘: 0G 带宽: 1Mbps 阿里云服务器安装mysql搞得我想吐血,搞了一个多星期,现在才搞好,而且,还有许 ...
- jdbc连接阿里云服务器上的MySQL数据库 及 数据库IP限制
问题1:Jdbc 如何连接阿里云服务器上的MySQL数据库? 解决: 上截图: 其中IP是阿里云服务器的公网IP地址. 问题2: 刚开始接手开发的时候,使用Navicat连接阿里云服务器上的数据后 ...
- 使用Navicat连接阿里云服务器上的MySQL数据库=======Linux 开放 /etc/hosts.allow
使用Navicat连接阿里云服务器上的MySQL数据库 1.首先打开Navicat,文件>新建连接> 2,两张连接方法 1>常规中输入数据库的主机名,端口,用户名,密码 这种直接 ...
- 阿里云服务器+Tomcat项目+mysql 发布项目全过程
这个博客管理系统折腾我好几天了. 总结一下整个过程吧! 1.首先这个博客在tomcat下 windows系统可以完全跑起来了,无论是前台或者后台都能实现所有的功能. 2.然后我买了一个域名jasonj ...
- 阿里云服务器及部署mysql
可通过百度获取内容不再赘述. 远程连接: 远程连接阿里云服务器需在服务器上开放443端口,方法自行百度 win10通过系统自带远程连接服务连接时需安装凭据: http://blog.csdn.ne ...
- 使用Navicat连接阿里云服务器中的Mysql数据库
1.首先将阿里云服务器中的安全组添加上Mysql的端口3306,如下图所示: 步骤就是进入到阿里云的官网,点击右上角控制台,在左边选择云服务器ECS--->实例 点击图中的管理按钮,然后选择本实 ...
- 使用Navicat连接阿里云服务器上的MySQL数据库--转
手把手教你如何正确连接阿里云服务器上的数据库: 1.首先打开Navicat,文件>新建连接>MySQL连接,其他的如一图所示. 2.因为是连接服务器上的MySQL,所以我们使用SSH连接, ...
- 阿里云服务器 CentOS 安装Mysql 5.6
下载:https://dev.mysql.com/downloads/file/?id=471181 第一步: 安装mysql5姿势是要先安装带有可用的mysql5系列社区版资源的rpm包 [ro ...
随机推荐
- AABB包围盒、OBB包围盒、包围球的比較
1) AABB 包围盒: AABB 包围盒是与坐标轴对齐的包围盒, 简单性好, 紧密性较差(尤其对斜对角方向放置的瘦长形对象, 採用AABB, 将留下非常大的边角空隙, 导致大量不是必需的包围盒相交測 ...
- Eclipse导入Gradle时报错:SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable
百度查到http://stackoverflow.com/questions/19794200/gradle-android-and-the-android-home-sdk-location 按照其 ...
- Ubuntu server下安装JDK和Tomcat7
服务器是Ubuntu server 12.04 LTS 64bit 所有操作假设已经有root权限,若没有需要添加sudo. 一. 安装JDK 1.去Oracle官网下载jdk-6u45-linux- ...
- hdu3722Card Game(KM最大带权匹配)
题目请戳这里 题目大意:给n个字符串,再给一个n的排列:p1,p2....pn.然后将第i个字符串贴到第pi个字符串后面,然后形成一个环.pi的首字符和第i个字符串的末尾字符就相邻,如果这2个字符相等 ...
- [React Flow] Up and Running with Facebook Flow for Typed JavaScript
Install: npm i -D flow-binnpm i -g flow-bin Init: flow init Script: "typecheck": "flo ...
- Entity Framework CodeFirst------数据迁移(二)
众所周知当我们的项目涉及到数据库时,随着需求或大或小的 变更后,我们之前设计好的数据模型会发生部分的更改,导致数据表.或者数据字段的增加.修改等,这个时候我们就需要对数据库结构进行修改,如果我们之前采 ...
- 10 条提升 Android 性能的建议
About the Speaker: Boris Farber 每个人都知道一个 App 的成功,更这个 App 的性能体验有着很密切的关系.但是如何让你的 App 拥有极致性能体验呢?在 Droid ...
- POJ 2891 扩展欧几里德
这个题乍一看跟剩余定理似的,但是它不满足两两互素的条件,所以不能用剩余定理,也是给了一组同余方程,找出一个X满足这些方程,如果找不到的话就输出-1 因为它不满足互素的条件,所以两个两个的合并,最后合成 ...
- B/S系统间跨域单点登录设计思路
基于B/S系统间单点登录 此处说的单点登录的概念,即不同系统公用一个登录界面.一处系统通过登录验证,在接入的各系统均为登录状态.一般有两种情景: 1) 一级域名相同 例如:tieba.baidu.c ...
- socket.io实现
后台代码 index_server.js var app = require('http').createServer(handler)//创建服务器app , io = require('socke ...