精华内容
下载资源
问答
  • mysql修改表的存储引擎
    千次阅读
    2016-03-18 10:41:44
            要做一名合格的程序员,除了把代码写的漂亮外,熟知数据库方面的知识也是不可或缺的,下面总结一下如何查看和修改MySQL数据库表存储引擎:
            1、查看数据库所能支持的存储引擎:show engines;
            2、查看某个数据库中某个表所使用的存储引擎:show table status from db_name where name='table_name';(注:将where条件去掉后可以查看某个数据库中所有表的存储引擎情况)
            3、修改表引擎方法:alter table table_name engine=innodb;
            4、关闭Innodb引擎方法:通过“net stop mysql”命令关闭mysql服务;找到mysql安装目录下的my.ini文件,将里面default-storage-engine=INNODB改为default-storage-engine=MYISAM,将#skip-innodb改为skip-innodb;最后通过“net start mysql”命令启动mysql服务。
    更多相关内容
  • 今天要说的就是表存储引擎修改。有三种方式,列表如下。 1.真接修改。在数据多的时候比较慢,而且在修改时会影响读取性能。my_table是操作的,innoDB是新的存储引擎。 代码如下:ALTER TABLE my_table ENGINE=...
  • mysql存储引擎MySQL服务器采用了模块化风格,各部分之间保持相对独立,尤其体现在存储架构上。存储引擎负责管理数据存储,以及MySQL的索引管理。通过定义的API,MySQL服务器能够与存储引擎进行通信。目前使用最多...
  • 第一种方法:ALTER TABLE将从一个引擎修改为另一个引擎最简单的办法是使用ALTER TABLE语句,转换存储引擎会导致失去原引擎相关的所有特性。例:将mytable的引擎修改为InnoDBmysql> ALTER TABLE mytable ...

    第一种方法:ALTER TABLE

    将表从一个引擎修改为另一个引擎最简单的办法是使用ALTER TABLE语句,转换表的存储引擎会导致失去原引擎相关的所有特性。

    例:将mytable的引擎修改为InnoDB

    mysql> ALTER TABLE mytable ENGINE = InnoDB;

    上述方法适用任何的存储引擎,但执行时间较长。MySQL会按行将数据从原表复制到一张新表中,在复制过程中会消耗系统所有的I/O能力,同时会对原表加上读锁。如果在繁忙的表上执行此操作需要特别小心。

    第二种方法:导出和导入数据

    使用mysqldump工具将数据导出到文件,然后修改文件中CREATE TABLE语句的存储引擎选项和表名,同时注意mysqldump默认会自动加上CREATE TABLE语句前加上DROPTABLE语句,若忽略此点可能会导致数据丢失。

    第三种方法:创建与查询(CREATE 和 SELECT)

    此方法综合了上述两种方法的高效和安全,不需要导出整个表,而是先创建一个新的存储引擎的表,然后利用 INSERT ... SELECT语法导入数据。

    mysql > CREATE TABLE innodb_table LIKE myisam_table;

    mysql > ALTER TABLE innodb_table ENGINE=InnoDB;

    mysql > INSERT INTO innodb_table SELECT * FROM myisam_table;

    如果数据量大,可考虑分批处理,针对每一段数据执行事务提交操作,以免大事务产生过多的undo。

    假设有主键字段id,可重复运行以下语句将数据导入新表:

    mysql > START TRANSACTION;

    mysql > INSERT INTO innodb_table SELECT * FROM myisam_table

    -> WHERE id BETWEEN x AND y;

    mysql > COMMIT;

    以上操作完成后,新表是原表的一个全量复制,原表不受任何影响。如果有必要,可以在执行中对原表加锁,确保新表与原表的数据一致。

    persona Toolkit提供了一个pt-online-schema-change的工具,可以简单方便地执行上述的过程,避免手工操作可能导致的失误。

    展开全文
  • 代码如下: SELECT GROUP_CONCAT(CONCAT( ‘ALTER TABLE ‘ ,TABLE_NAME ,’ ENGINE=ARCHIVE;... 您可能感兴趣的文章:Mysql更改默认引擎为Innodb的步骤方法MySQL修改数据表存储引擎的3种方法介绍MySQL存储引擎总结如何
  • 修改Mysql表存储引擎的三种方法

    万次阅读 2018-09-18 14:21:14
    通过命令直接修改表存储引擎 alter table mytest ENGINE = MyIsam; * 会导致大量的IO问题,不建议使用;存储引擎的转换会导致原有的特性消失,例如外键等; * 使用导入导出,来实现 * 首先需要...
    • 通过命令直接修改表的存储引擎
    alter table mytest ENGINE = MyIsam;
    

    这里写图片描述

    • 会导致大量的IO问题,不建议使用;存储引擎的转换会导致原有表的特性消失,例如外键等;
    • 使用导入导出表,来实现
    • 首先需要修改的表的数据导出
      这里写图片描述
    • 然后修改关于表存储引擎的选项
     22 DROP TABLE IF EXISTS `mytest`;  //在进行恢复的过程中,如果不修改原来表的名字原来的表就回被删除;
     23 /*!40101 SET @saved_cs_client     = @@character_set_client */;
     24 /*!40101 SET character_set_client = utf8 */;
     25 CREATE TABLE `mytest` (
     26   `id` int(11) DEFAULT NULL,
     27   `name` varchar(30) DEFAULT NULL
     28 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
     29 /*!40101 SET character_set_client = @saved_cs_client */;
    
    • 这是一个脚本,可以通过Mysql命令直接执行;
    • 现在的存储引擎是MyISAM
      这里写图片描述
    • 如果不需要原来的表,可以执行这个脚本
    root@westos:~# mysql -uroot -p < /mnt/userInfo.mytest.sql -A userInfo
    Enter password: 
    
    • 连接数据库,查看表的状态
      这里写图片描述
    • 数据仍然存在
      这里写图片描述
    • 第三种方式,是通过创建新表,然后重新写入数据的方式来进行
    mysql> create table myisam_mytest like mytest;
    Query OK, 0 rows affected (0.08 sec)
    
    mysql> alter table myisam_mytest engine=Myisam;
    Query OK, 0 rows affected (0.07 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    
    mysql> insert into myisam_mytest select * from mytest;
    Query OK, 4 rows affected (0.00 sec)
    Records: 4  Duplicates: 0  Warnings: 0
    
    • 查看修改后的表状态
      这里写图片描述
      这里写图片描述
    展开全文
  •  我们通常说的MySql数据库,sql server数据库等等其实是数据库管理系统,它们可以存储数据,并提供查询和更新数据库中的数据的功能等等。根据数据库如何存储数据和如何操作数据的实现机制不同,这些数据库之间即有...
  • 如何查看MySQL的当前存储引擎

    千次阅读 2021-02-07 17:09:45
    一般情况下,mysql会默认提供多种存储引擎,你可以通过下面的查看:看你的mysql现在已提供什么存储引擎:mysql>...你要看某个用了什么引擎(在显示结果里参数engine后面的就表示该当前用的存储引擎):mysql> s...

    一般情况下,mysql会默认提供多种存储引擎,你可以通过下面的查看:

    看你的mysql现在已提供什么存储引擎:

    mysql> show engines;

    看你的mysql当前默认的存储引擎:

    mysql> show variables like '%storage_engine%';

    你要看某个表用了什么引擎(在显示结果里参数engine后面的就表示该表当前用的存储引擎):

    mysql> show create table 表名;

    如何查看Mysql服务器上的版本

    额 系统函数啊

    select version();

    Mysql数据库3种存储引擎有什么区别?

    这个是考虑性能的问题,还有事务的支持,吧   百度一下你就知道

    MyISAM、InnoDB、Heap(Memory)、NDB

    貌似一般都是使用   InnoDB的,

    mysql的存储引擎包括:MyISAM、InnoDB、BDB、MEMORY、MERGE、EXAMPLE、NDBCluster、ARCHIVE、CSV、BLACKHOLE、FEDERATED等,其中InnoDB和BDB提供事务安全表,其他存储引擎都是非事务安全表。

    最常使用的2种存储引擎:

    1.Myisam是Mysql的默认存储引擎,当create创建新表时,未指定新表的存储引擎时,默认使用Myisam。每个MyISAM在磁盘上存储成三个文件。文件名都和表名相同,扩展名分别是.frm(存储表定义)、.MYD(MYData,存储数据)、.MYI(MYIndex,存储索引)。数据文件和索引文件可以放置在不同的目录,平均分布io,获得更快的速度。

    2.InnoDB存储引擎提供了具有提交、回滚和崩溃恢复能力的事务安全。但是对比Myisam的存储引擎,InnoDB写的处理效率差一些并且会占用更多的磁盘空间以保留数据和索引。

    ==================================================

    修改mysql的默认存储引擎

    1、查看mysql存储引擎命令,

    在mysql>提示符下搞入show engines;

    字段 Support为:Default表示默认存储引擎

    2、设置InnoDB为默认引擎:

    在配置文件my.cnf中的 [mysqld] 下面加入

    default-storage-engine=INNODB 一句

    3、重启mysql服务器:

    mysqladmin -u root -p shutdown

    或者service mysqld restart 登录mysql数据库

    MySQL查看和修改表的存储引擎

    1 查看系统支持的存储引擎

    show engines;

    2 查看表使用的存储引擎

    两种方法:

    a、show table status from db_name where name='table_name';

    b、show create table table_name;

    如果显示的格式不好看,可以用\g代替行尾分号

    有人说用第二种方法不准确,我试了下,关闭掉原先默认的Innodb引擎后根本无法执行show create table table_name指令,因为之前建的是Innodb表,关掉后默认用MyISAM引擎,导致Innodb表数据无法被正确读取。

    3 修改表引擎方法

    alter table table_name engine=innodb;

    4 关闭Innodb引擎方法

    关闭mysql服务: net stop mysql

    找到mysql安装目录下的my.ini文件:

    找到default-storage-engine=INNODB 改为default-storage-engine=MYISAM

    找到#skip-innodb 改为skip-innodb

    启动mysql服务:net start mysql

    展开全文
  • 在使用MySQL,可能会遇到过MyISAM存储引擎损坏的情况。如以下情况: .frm被锁定不能修改 找不到.myi文件(索引文件) 意外结束记录 文件被毁坏 从处理器得到错误nnn 解决办法1: 使用MySQL自带的myisamchk...
  • mysql存储引擎

    万次阅读 多人点赞 2019-07-31 19:28:44
    数据库存储引擎 数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行...因为在关系数据库中数据的存储是以的形式存储的,所以存储引擎也可以称为类型(Table Type,即存储和操作此...
  • MySQL存储引擎

    千次阅读 2022-03-23 17:05:34
    3.查看当前MySQL数据库支持的存储引擎: 1、innodb支持事务,而myisam不支持事务。 2、innodb支持外键,而myisam不支持外键。 3、innodb是行锁,而myisam是表锁(每次更新增加删除都会锁住)。 4、innodb和myisam...
  • Mysql修改表引擎

    千次阅读 2018-03-15 11:38:22
    前言 最近在SpringBoot中采用JpaRepository以及Transactional进行数据库事务操作,结果发现数据库中的并...经过检查发现代码并没有错误,于是想到可能采用JpaRepository自动创建时创建的表引擎为MyISAM,而M...
  • MySQL之InnoDB存储引擎

    千次阅读 2022-03-10 20:52:26
    MySQL之InnoDB存储引擎
  • MySQL存储引擎

    千次阅读 2021-12-10 17:31:12
    一、mysql存储引擎概述 1.1 存储引擎 MySQL中的数据用各种不同的技术存储在文件(或者内存)中。...这些不同的技术以及配套的相关功能在MySQL中被称作存储引擎(也称作类型)。 MySQL默认配置了许多不同的存储引擎
  • MySQL存储引擎解析.doc

    2020-08-19 16:38:21
    mysql存储引擎mysql组件中的一部分,而MySQL组成是由、管理工具、连接池、SQL接口、分析器、优化器、缓存、存储引擎、硬盘组成的,而mysql存储引擎就是mysql组成中的一个功能模块,存储引擎属于的处理器
  • MySQL中默认的存储引擎

    千次阅读 2021-01-20 03:18:07
    MYSQL中支持很多的类型,对应不同的存储引擎mysql.exe中用show engines如果想改变默认的存储引擎可以修改my.ini文件中的default-storage-engine常用的存储引擎:· MyISAM:默认的MySQL插件式存储引擎,它是在...
  • MySQL 存储引擎

    千次阅读 2020-12-29 04:39:42
    一、MySQL存储引擎种类查看命令:show engines;MRG_MYISAMCSVMyISAMBLACKHOLEPERFORMANCE_SCHEMAInnoDBARCHIVEMEMORYFEDERATED其他产品存储引擎(percona、mariadb)TokuDBMyRocks二、InnoDB 核心特性介绍1、聚簇索引...
  • MySQL数据库的存储引擎及索引

    千次阅读 2022-03-27 20:58:06
    MySQL存储引擎 MySQL存储引擎有很多种,使用show engines命令查看MySQL支持的存储引擎 我们这里主要介绍一下InnoDB和MyISAM存储引擎 ...修改默认的存储引擎:在配置文件my.cnf中的 [mysqld] 下面加入def.
  • mysql怎么指定存储引擎

    千次阅读 2021-02-05 01:24:29
    2、修改表时,可以使用“alter table 表名 engine=存储引擎;”来指定存储引擎。(推荐教程:mysql视频教程)存储引擎,即类型(table_type)用户可以根据应用的需求选择如何来存储数据、索引、是否使用事务等。选择...
  • MySQL常见的三种存储引擎

    千次阅读 2021-01-18 22:08:06
    Ok,我们知道了,引擎就是一个程序的核心组件...不同的存储引擎决定了MySQL数据库中的可以用不同的方式来存储。我们可以根据数据的特点来选择不同的存储引擎。在MySQL中的存储引擎有很多种,可以通过“SHOW ENGINE...
  • Mysql存储引擎详解

    2020-09-09 21:20:52
    存储引擎其实就是如何实现存储数据,如何为存储的数据建立索引以及如何更新,查询数据等技术实现的方法。本文我们来详细探讨下MySQL中的几个存储引擎(MyISAM、InnoDB、archive、MERGE)的相关知识
  • Mysql常见的几种存储引擎

    千次阅读 2021-01-18 21:47:56
    一、mysql的体系结构整个MysqlServer有一下几部分组成Connection Pool : 连接池组件Management Services & Utilities : 管理服务和工具组件SQL Interface : SQL接口组件Parser : 查询分析器组件Optimizer : 优化...
  • MySQL常用存储引擎详解

    千次阅读 2021-04-05 15:15:43
    MySQL常用存储引擎详解一、什么是存储引擎二、掌握存储引擎的重要性三、MySQL常用的存储引擎有哪些四、存储引擎的特性1、InnoDB2、MyISAM3、MEMORY4、ARCHIVE总结 一、什么是存储引擎 存储引擎是数据库的核心,对于...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 177,571
精华内容 71,028
关键字:

mysql修改表的存储引擎

mysql 订阅