linux中mysql升级后不能启动的解决方法

问题一

第一步
 

 代码如下 复制代码
1. 下载 http://files.directadmin.com/services/all/mysql/mysql-5.1.50.tar.gz  
 
2.tar zxvf mysql-5.1.50.tar.gz  
 
3.cp mysql-5.1.50/sql/share/english/errmsg.sys /usr/share/mysql/english/errmsg.sys  

 
第二步
 

 代码如下 复制代码
1.编辑my.cnf 添加skip-external-locking  
 
2. mysql_install_db  
 
3.service mysqld start

问题二

MySQL版本由之前的5.0.95升级到5.5.27后,无法启动

原因:

1、MySQL升级之后,由于配置文件/etc/my.cnf还是原来5.0.95的,对5.5.27已经不适用了,所以出错

2、MySQL升级之前修改过数据库默认存放路径,升级之后数据库路径又被还原到默认位置,所以出错

解决办法:

1、用MySQL-5.5.27的配置文件替换原来的/etc/my.cnf

2、修改MySQL数据库路径为/data/mysql_data/mysql目录

具体操作:

1、cd /usr/share/mysql #进入MySQL目录

 

cp /usr/share/mysql/my-medium.cnf /etc/my.cnf #拷贝模板文件为MySQL配置文件(直接覆盖/etc目录下面原来的my.cnf)

注意:MySQL配置模板文件共有5个:my-huge.cnf、my-innodb-heavy-4G.cnf、my-large.cnf、mymedium.cnf、my-small.cnf,根据自己的服务器硬件配置选择相应的模板文件即可

2、vi /etc/my.cnf #编辑

socket = /data/mysql_data/mysql/mysql.sock#修改/var/lib/mysql/mysql.sock为/data/mysql_data/mysql/mysql.sock,注意有两处都要改

datadir = /data/mysql_data/mysql #在[mysqld]下面添加这一行

:wq! #保存退出

3、vi /etc/init.d/mysqld #编辑,找到get_mysql_option mysqld datadir "/var/lib/mysql",修改为

get_mysql_option mysqld datadir "/data/mysql_data/mysql"

:wq! #保存退出

4、vi /usr/bin/mysqld_safe #编辑,找到DATADIR=/var/lib/mysql,修改为

DATADIR=/data/mysql_data/mysql

:wq! #保存退出

5、ln -s /data/mysql_data/mysql/mysql.sock /var/lib/mysql/mysql.sock #添加软连接

6、service mysqld start #启动MySQL,启动成功

mysql -u root -p #输入密码后,成功进入MySQL控制台

show variables like '%datadir%'; #查看MySQL数据库存放路径

时间: 2025-01-27 21:24:42

linux中mysql升级后不能启动的解决方法的相关文章

CentOS6.2 升级后X-windows 启动失败解决方法

报错如下:      代码如下 复制代码 Could not init font path element catalogue:/etc/X11/fontpath.d, removing from list! 其日志内容如下:    代码如下 复制代码   [    22.264] (II) AIGLX: enabled GLX_MESA_copy_sub_buffer [    22.264] (II) AIGLX: enabled GLX_INTEL_swap_event [    22.2

CentOS7中MariaDB修改datadir后无法启动的解决方法_Linux

发现问题 最近想把服务器的CentOS 6.8升级上CentOS7.但是失败了,重装了系统,重装以后挂载好数据盘后发现MariaDB起不来了,查journal log,只有一行warning can't create test file /var/lib/mysql/core.lower-test 解决方法 在网上查了一下,有两种方案      第一是说selinux导致的,但是ucloud的镜像默认就是关闭selinux的,所以不是这个问题      第二说是apparmor限制了进程的目录读

linux中mysql不能 REPAIR TABLE修复表解决办法

REPAIR TABLE语法 REPAIR TABLE `table_name` 修复表 REPAIR TABLE 用于修复被破坏的表 在linux中使用 REPAIR TABLE `table_name` pre_forum_thread 提示 xt.pre_forum_thread repair error 1 when fixing table xt.pre_forum_thread repair Error Can't change ownership of the file '/usr

Linux中提示No such file or directory解决方法

  问题描述 解决方法 分析原因,可能因为我平台迁移碰到权限问题我们来进行权限转换 1)在Windows下转换: 利用一些编辑器如UltraEdit或EditPlus等工具先将脚本编码转换,再放到Linux中执行.转换方式如下(UltraEdit):File-->Conversions-->DOS->UNIX即可. 2)方法 用vim打开该sh文件,输入: [plain] :set ff 回车,显示fileformat=dos,重新设置下文件格式: [plain] :set ff=uni

linux中mysql数据库备份工具Xtrabackup的安装方法

1.下载  代码如下 复制代码 wget http://www.percona.com/redir/downloads/XtraBackup/LATEST/binary/redhat/6/x86_64/percona-xtrabackup-2.2.3-4982.el6.x86_64.rpm 2.安装  代码如下 复制代码 rpm -ivh percona-xtrabackup-2.2.3-4982.el6.x86_64.rpm 如果报下面错误的话 warning: percona-xtrabac

linux服务器出现严重故障后的原因以及解决方法

  1.把系统安装光盘插入,重启机器,启动时迅速按下Del键,进入CMOS,把启动顺序改为光盘先启动,这样就启动了Linux安装程序,按F5,按提示打入Linux rescue回车,进入救援模式,接下来是选择语言及键盘,直接回车即可,程序提示已经把硬盘上的Linux系统安装到了/mnt/sysimage下,然后出现了超级用户提示符. 2.进入到硬盘etc目录下:cd /mnt/sysimage/etc,先做备份防不测: cp shadow shadow.old 修改shadow文件的属性为可写:

Win7怎么安装3DMAX完成后不能启动的解决方法

  Win7系统3DMAX打开时提示:应用程序无法正常启动? 此类故障一般是由于用户的Windows系统文件安装不全所造成,Windows一般在正常安装情况下会少装如下几个文件:vdd.vxd. vcomm.vxd.vmouse.vxd.vflatd.vxd.VDMad.vxd.configmg.vxd.ntkern.vxd,我们只要将其添加进去即可. (1)在系统桌面上单击"开始"-"程序"-"附件"-"系统工具"-&quo

Windows下MySQL 5.7无法启动的解决方法_Mysql

问题描述: 从网上下了5.7 的MySQL,在bin目录下执行 start mysqld ,弹出个cmd窗口一闪就没了,也看不清是什么报错.mysqld --install安装了服务,也启动不了. 处理步骤: 1.打开事件查看器检查报错信息 2.网上查了,都说如果是 linux 需要执行 mysql_install_db:如果是Windows需要拷贝 user.frm user.MYD和user.MYI 3.不过,http://serverfault.com/questions/291126/m

在Linux中使用MD5实现用户验证的解决方法_Linux

使用openssl中的MD5函数,该函数返回16字节的unsigned char类型的数据,每个字节的范围都在0-255间,把 它格式化为十六进制就是32位md5编码.注:一个字节为8位,正好可以表示2位的十六进制. 使用登录客户端的用户名从Redis数据库中得到salt值和加密后的密码,然后把登录客户端的密码经过salt加密后,与 Redis数据库中的密码进行比较.相同则验证通过,否则验证失败. Redis数据库中密码的存储格式为password:salt 用户验证算法如下: int user