MySQL启动时InnoDB引擎被禁用了的解决方法

发现问题

今天在工作中,从本地数据库复制表数据到虚拟机 CentOS 6.6 上的数据库时,得到提示:

Unknown table engine 'InnoDB'

于是在服务器 MySQL 中查看了引擎:

mysql> show engines\G

得到:

*************************** 1. row ***************************
  Engine: MyISAM
  Support: DEFAULT
  Comment: MyISAM storage engine
Transactions: NO
   XA: NO
 Savepoints: NO
*************************** 2. row ***************************
  Engine: CSV
  Support: YES
  Comment: CSV storage engine
Transactions: NO
   XA: NO
 Savepoints: NO
*************************** 3. row ***************************
  Engine: MEMORY
  Support: YES
  Comment: Hash based, stored in memory, useful for temporary tables
Transactions: NO
   XA: NO
 Savepoints: NO
*************************** 4. row ***************************
  Engine: BLACKHOLE
  Support: YES
  Comment: /dev/null storage engine (anything you write to it disappears)
Transactions: NO
   XA: NO
 Savepoints: NO
*************************** 5. row ***************************
  Engine: MRG_MYISAM
  Support: YES
  Comment: Collection of identical MyISAM tables
Transactions: NO
   XA: NO
 Savepoints: NO
*************************** 6. row ***************************
  Engine: PERFORMANCE_SCHEMA
  Support: YES
  Comment: Performance Schema
Transactions: NO
   XA: NO
 Savepoints: NO
*************************** 7. row ***************************
  Engine: ARCHIVE
  Support: YES
  Comment: Archive storage engine
Transactions: NO
   XA: NO
 Savepoints: NO
*************************** 8. row ***************************
  Engine: FEDERATED
  Support: NO
  Comment: Federated MySQL storage engine
Transactions: NULL
   XA: NULL
 Savepoints: NULL
*************************** 9. row ***************************
  Engine: InnoDB
  Support: NO
  Comment: Supports transactions, row-level locking, and foreign keys
Transactions: NULL
   XA: NULL
 Savepoints: NULL
rows in set (0.00 sec)

在 InnoDB 的 Supports 为 NO

解决方法

编辑 my.cnf

[root@localhost mysql]# vim /etc/my.cnf

把其中 innodb = OFF 改为 innodb = ON

同时把 skip-innodb 注释掉即可。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对我们的支持。

(0)

相关推荐

  • 解决MySQL因不能创建 PID 导致无法启动的方法

    问题描述 MySQL 启动报错信息如下: Starting mysqld (via systemctl): Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details. [FAILED] 根据提示,使用 systemctl

  • MySQL中配置文件my.cnf因权限问题导致无法启动的解决方法

    本文主要给大家介绍了关于MySQL中配置文件my.cnf因权限问题导致无法启动的相关解决过程,分享出来供大家参考学习,下面来一起看看详细的介绍: 问题描述 MySQL 无法启动,报如下错误: 问题分析 查看 MySQL 错误日志发现如下错误(提示 MySQL 库的 host 表无法打开): 查看 /etc/my.cnf 配置文件: 到 MySQL 数据库所在目录查看表是否存在: 发现 MySQL 库的 host 表是存在的,那为什么会提示不存在呢? 问题应该出在 /etc/my.cnf 文件上,

  • MySQL无法启动的解决办法

    MySQL无法启动的解决办法 MySQL无法启动 在停止mysql之后,执行了一些操作(如修改主机名),重新启动 mysql,发现起不来. [root@www ~]$ service mysql start Starting MySQL..^[[A.................................................................................................. ERROR! The server quit with

  • Mysql启动报ERROR:2002的分析与解决

    前言 本文主要给大家介绍了关于Mysql启动报ERROR:2002的分析与解决,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 1.故障现象 [root@localhost scripts]# mysql -u root ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysqld.sock' (2) 2.故障分析 查看mysql实例的状态 [root@localhost

  • 解决Win7 x64安装解压版mysql 5.7.18 winx64出现服务无法启动问题

    今天在mysql官网上下载了mysql-5.7.18-winx64.zip,并解压: 然后按http://www.jb51.net/article/83646.htm的步骤去配置, 但是在net start mysql这一步一直报错"MySQL 服务正在启动 .MySQL 服务无法启动." 经过网上数小时的搜索,才搞定,,解决方法如下: 先删掉目录../mysql-5.7.18-winx64下的文件夹data (不放心的话,可以将之剪切到其它目录). 然后执行初始化命令mysqld -

  • 解决“无法启动mysql服务 错误1069”的方法

    今天还在路上的时候,同事就发来消息,说网站后台无法访问了,那个急啊! 赶到公司,登陆服务器,正常,还好,看来不是服务器自身的问题,看错误提示,应该是mysql的问题了. 到服务选项里已查看,果然,未启动状态,启动MYSQL的时候提示错误:"在本地计算机 无法启动mysql服务 错误1069 :由于登录失败而无法启动服务",这让我很郁闷,MYSQL怎么会出现错误呢?下面介绍下自己的解决方法 1. 打开自己的服务器(我的是VPS),然后选择[我的电脑],右键,选择[管理] 2. 在[管理]

  • Mysql 5.7.18安装方法及启动MySQL服务的过程详解

    MySQL 是一个非常强大的关系型数据库.但有些初学者在安装配置的时候,遇到种种的困难,在此就不说安装过程了,说一下配置过程.在官网下载的MySQL时候,有msi格式和zip格式.Msi直接运行安装即可,zip则解压在自己喜欢的目录地址即可.在安装这两种的时候,都需要配置才能用.以下介绍主要是msi格式默认的地址:C:\Program Files\ mysql-5.7.18-win32. 一.在安装或者解压后,需要配置环境变量,过程如下:我的电脑->属性->高级系统设置->高级->

  • MySQL启动时InnoDB引擎被禁用了的解决方法

    发现问题 今天在工作中,从本地数据库复制表数据到虚拟机 CentOS 6.6 上的数据库时,得到提示: Unknown table engine 'InnoDB' 于是在服务器 MySQL 中查看了引擎: mysql> show engines\G 得到: *************************** 1. row *************************** Engine: MyISAM Support: DEFAULT Comment: MyISAM storage en

  • mysql启动时出现ERROR 2003 (HY000)问题的解决方法

    一.问题描述 在启动MYSQL时出现问题:"ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)",情况如图: 二.问题分析 从错误的提示中可以看出MySQL服务没有启动,因此只需要启动MySQL服务就可以了. 三.问题解决 直接采用net start MySQL 就可以启动MySQL服务,但是输入命令后仍然出现错误: 可以看到错误提示:"服务名无效",说明不存在MySQL服

  • MySQL 启动成功但未监听端口的解决方法

    问题描述 MySQL 启动成功,使用 ps -ef |grep mysql 可以看到进程,如下图: 也可以在服务器登陆,如下图: 但是使用 netstat -antp| grep 3306 可以看到没有监听端口. 查看 MySQL 配置文件,端口也没有更改. 解决办法 检查发现是配置文件中使用了 skip-networking,可以看到这个选项的的作用是不监听端口,同主机的用户通过 sockets 进行链接.外部主机由于没有监听端口,将无法连接. 将 skip-networking 注释掉之后,

  • 如何让docker中的mysql启动时自动执行sql语句

    在用docker创建mysql容器的时,有时候我们期望容器启动后数据库和表已经自动建好,初始化数据也已自动录入,也就是说容器启动后我们就能直接连上容器中的数据库,使用其中的数据了. 其实mysql的官方镜像是支持这个能力的,在容器启动的时候自动执行指定的sql脚本或者shell脚本,我们一起来看看mysql官方镜像的Dockerfile,如下图: 已经设定了ENTRYPOINT,里面会调用/entrypoint.sh这个脚本,我们把mysql:8这个镜像pull到本地,再用docker run启

  • docker mysql启动时执行初始化sql

    1.拉取Mysql镜像 docker pull mysql:5.7 2.检查mysql镜像 docker inspect mysql:5.7 "Entrypoint": [ "docker-entrypoint.sh" ], 3.本地创建mysql外挂的目录 ##挂载到容器内/docker-entrypoint-initdb.d:MySQL启动时将执行 01_create_database.sql /root/mysql-5.7/init-data 01_creat

  • 如何避免mysql启动时错误及sock文件作用分析

    在mysql的启动过程中有时会遇到下述错误 Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) 请问mysql.sock 这个文件到底起什么作用? 如何避免发生如此错误? 答案一. 这个mysql.sock应该是mysql的主机和客户机在同一host(物理服务器)上的时候,使用unix domain socket做为通讯协议的载体,它比tcp快.通常遇到这个问题的原因就是你的mysql server没运

  • Ubuntu 18.04 安装MySQL时未提示输入密码的问题及解决方法

    Ubuntu 1804 安装MySQL 5.7为例给大家介绍的很详细. 执行命令安装MySQL sudo apt install mysql-server sudo apt install mysql-client 安装后看下是否启动: sudo ps aux | grep mysql 如果已经启动,执行完上述命令可看到相应的信息,如果没有启动,则可执行下面命令启动mysql: sudo service mysql start 另外,一会要用到重启mysql命令,重启和关闭mysql的命令分别是

  • MySQL重置root密码提示"Unknown column ‘password"的解决方法

    晚上打开MAC,发现root帐户突然不能正常登陆MySQL,于是打算重置密码,看了几篇文章,竟然重置不成功,总是得到Unknown column 'password'的错误,看了user的表结构也确实没有该字段了.经查发现是MySQL升级后将字段名给改了,password名称改为authentication_string了.知道原因后,按照如下命令就可以成功重置root密码了. $sudo mysql.server stop #先关闭正常的MySQL服务 $sudo mysqld_safe --

  • mysql中插入表数据中文乱码问题的解决方法

    一.问题 开发中遇到将其它数据库数据插入到mysql数据库表中一直会报类似如下错误: Incorrect string value: '\xE6\x88\x91' for column 'name' at row 1 二.分析 1.我先去查了两个数据库表中此字段对应的类型都是 varchar,所以不存在类型不一致导致插入报错的问题. 2. 排除字段类型不一致导致的错误后,我猜测是中文乱码问题,然后插入纯英文数据发现没有报错,所以确定了是中文乱码问题.然后网上百度发现是mysql默认的编码问题导致

随机推荐