iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >MySQL怎么批量修改存储引擎
  • 174
分享到

MySQL怎么批量修改存储引擎

2024-04-02 19:04:59 174人浏览 独家记忆
摘要

本篇内容主要讲解“Mysql怎么批量修改存储引擎”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“mysql怎么批量修改存储引擎”吧!再看Mysql手册,看到有关修

本篇内容主要讲解“Mysql怎么批量修改存储引擎”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习mysql怎么批量修改存储引擎”吧!

再看Mysql手册,看到有关修改存储引擎的部分,隧想到能否用shell脚本实现批量修改,于是便有了下面的脚本,以把MyISAM转换为InnoDB为例。

实验环境如下: OS: Centos 5.8 Final MySQL Version:5.5.19   脚本内容如下: 点击(此处)折叠或打开

  1. #/bin/bash

  2. #FileName:Convert_Storage_Engine.sh

  3. #Desc:Conversion of a MySQL tables to other storage engines

  4. #Create By:fedoracle

  5. #Date:2012/06/27

  6.  

  7. DB=new

  8. USER=test

  9. PASSWD=test

  10. HOST=192.168.25.121

  11. MYSQL_BIN=/usr/local/mysql/bin

  12. S_ENGINE=MyISAM

  13. D_ENGINE=InnoDB

  14.  

  15. #echo "Enter MySQL bin path:"

  16. #read MYSQL_BIN

  17. #echo "Enter Host:"

  18. #read HOST

  19. #echo "Enter Uesr:"

  20. #read USER

  21. #echo "Enter PassWord:"

  22. #read PASSWD

  23. #echo "Enter DB name :"

  24. #read DB

  25. #echo "Enter the original engine:"

  26. #read S_ENGINE

  27. #echo "Enter the new engine:"

  28. #read D_ENGINE

  29.  

  30. $MYSQL_BIN/mysql -h$HOST -u$USER -p$PASSWD $DB -e "select TABLE_NAME from infORMation_schema.TABLES where TABLE_SCHEMA='"$DB"' and ENGINE='"$S_ENGINE"';" | grep -v "TABLE_NAME" >tables.txt

  31. for t_name in `cat tables.txt`

  32. do

  33.     echo "Starting convert table $t_name......"

  34.     sleep 1

  35.     $MYSQL_BIN/mysql -h$HOST -u$USER -p$PASSWD $DB -e "alter table $t_name engine='"$D_ENGINE"'"

  36.     if [ $? -eq 0 ]

  37.     then

  38.         echo "Convert table $t_name ended." >>con_table.log

  39.         sleep 1

  40.     else

  41.         echo "Convert failed!" >> con_table.log

  42.     fi

  43. done

测试过程如下:

点击(此处)折叠或打开

  1. [root@dbmaster ~]# mysql -h292.168.25.121 -utest -ptest

  2. (test@192.168.25.121) [(none)] create database new;

  3. Query OK, 1 row affected (0.01 sec)

  4.  

  5. (test@192.168.25.121) [(none)] show databases;

  6. +--------------------+

  7. | Database |

  8. +--------------------+

  9. | information_schema |

  10. | 361 |

  11. | mysql |

  12. | new |

  13. | performance_schema |

  14. | test |

  15. +--------------------+

  16. 6 rows in set (0.00 sec)

  17.  

  18. [root@dbmaster ~]# mysql -h292.168.25.121 -utest -ptest new < 361.sql

  19. (test@192.168.25.121) [(none)] use new;

  20. Database changed

  21. (test@192.168.25.121) [new] show tables;

  22. +---------------------------+

  23. | Tables_in_new |

  24. +---------------------------+

  25. | ad_magazine_content |

  26. | ad_news_letter |

  27. | conf_app |

  28. | ip_province |

  29. | ip_records |

  30. | order_action |

  31. | order_delivery |

  32. | order_Goods |

  33. ................................

  34.  

  35. (test@192.168.25.121) [information_schema] select TABLE_NAME,ENGINE from TABLES where TABLE_SCHEMA='new' and ENGINE='MyISAM';

  36. +--------------------------+--------+

  37. | TABLE_NAME | ENGINE |

  38. +--------------------------+--------+

  39. | ad_news_letter | MyISAM |

  40. | conf_app | MyISAM |

  41. | product_lib_attr_group | MyISAM |

  42. | product_lib_brand | MyISAM |

  43. | product_lib_ccard | MyISAM |

  44. | product_lib_color | MyISAM |

  45. | product_lib_fashion | MyISAM |

  46. | product_lib_material | MyISAM |

  47. | product_lib_season | MyISAM |

  48. | product_lib_series | MyISAM |

  49. | product_lib_size | MyISAM |

  50. | product_lib_size_compare | MyISAM |

  51. | product_lib_temperature | MyISAM |

  52. | product_lib_type | MyISAM |

  53. | product_lib_virtual_cat | MyISAM |

  54. | req_conf_app | MyISAM |

  55. | shop_keywords_details | MyISAM |

  56. | system_api_user | MyISAM |

  57. | system_payment | MyISAM |

  58. | system_region | MyISAM |

  59. | system_shop_dist | MyISAM |

  60. | user_show_order | MyISAM |

  61. +--------------------------+--------+

  62. 22 rows in set (0.02 sec)

  63.  

  64. [root@dbmaster scripts]# bash ChangeStorageEngine.sh

  65. Starting convert table ad_news_letter......

  66. Starting convert table conf_app......

  67. Starting convert table product_lib_attr_group......

  68. Starting convert table product_lib_brand......

  69. Starting convert table product_lib_ccard......

  70. Starting convert table product_lib_color......

  71. Starting convert table product_lib_fashion......

  72. Starting convert table product_lib_material......

  73. Starting convert table product_lib_season......

  74. Starting convert table product_lib_series......

  75. Starting convert table product_lib_size......

  76. Starting convert table product_lib_size_compare......

  77. Starting convert table product_lib_temperature......

  78. Starting convert table product_lib_type......

  79. ...............................

  80.  

  81. (test@192.168.25.121) [information_schema] select TABLE_NAME,ENGINE from TABLES where TABLE_SCHEMA='new' and ENGINE='MyISAM';

  82. Empty set (0.01 sec)

  83.  

  84. [root@dbmaster scripts]# cat con_table.log 

  85. Convert table ad_news_letter ended.

  86. Convert table conf_app ended.

  87. Convert table product_lib_attr_group ended.

  88. Convert table product_lib_brand ended.

  89. Convert table product_lib_ccard ended.

  90. Convert table product_lib_color ended.

  91. Convert table product_lib_fashion ended.

  92. Convert table product_lib_material ended.

  93. Convert table product_lib_season ended.

  94. Convert table product_lib_series ended.

  95. Convert table product_lib_size ended.

  96. Convert table product_lib_size_compare ended.

  97. Convert table product_lib_temperature ended.

  98. Convert table product_lib_type ended.

  99. Convert table product_lib_virtual_cat ended.

  100. Convert table req_conf_app ended.

  101. Convert table shop_keywords_details ended.

  102. Convert table system_api_user ended.

  103. Convert table system_payment ended.

  104. Convert table system_region ended.

  105. Convert table system_shop_dist ended.

  106. Convert table user_show_order ended.

################################### 有些表在转换的时候由于字符集,字段长度,外键约束等原因会出现一些问题,如下 点击(此处)折叠或打开

  1. ERROR 1217 (23000) at line 1: Cannot delete or update a parent row: a foreign key constraint fails

  2. ERROR 1071 (42000) at line 1: Specified key was too long; max key length is 1000 bytes

到此,相信大家对“MySQL怎么批量修改存储引擎”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

您可能感兴趣的文档:

--结束END--

本文标题: MySQL怎么批量修改存储引擎

本文链接: https://www.lsjlt.com/news/59133.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL怎么批量修改存储引擎
    本篇内容主要讲解“MySQL怎么批量修改存储引擎”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL怎么批量修改存储引擎”吧!再看MySQL手册,看到有关修...
    99+
    2024-04-02
  • mysql中怎么修改默认存储引擎
    mysql中怎么修改默认存储引擎,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。修改mysql的默认存储引擎 1、查看mysql存储引...
    99+
    2024-04-02
  • mysql如何修改存储引擎为innodb
    这篇文章主要介绍“mysql如何修改存储引擎为innodb”,在日常操作中,相信很多人在mysql如何修改存储引擎为innodb问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”...
    99+
    2024-04-02
  • 怎么修改mysql的字符集和默认存储引擎
    这篇文章主要讲解了“怎么修改mysql的字符集和默认存储引擎”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么修改mysql的字符集和默认存储引擎”吧!修改...
    99+
    2024-04-02
  • Mysql -存储引擎
    1、存储引擎:是表级别的类型。 2、查看表存储引擎的方法: (1)、mysql> show table status in mydb where name='classes'\G; 1. ...
    99+
    2024-04-02
  • MySQL如何修改数据表的存储引擎
    MySQL修改数据表的存储引擎的步骤:1、查看当前数据表使用的存储引擎;2、备份数据表,以防止修改过程中出现意外情况导致数据丢失;3、可以使用ALTER TABLE语句修改数据表的存储引擎;4、使用SHOW CREATE TABLE语句来验...
    99+
    2023-10-22
    mysql 存储引擎
  • 【MySQL】存储引擎
    文章目录 1. 前言2. MySQL的体系结构3. 存储引擎简介4. InnoDB介绍5. MyISAM介绍6. Memory7. 存储引擎的选择8. 总结 1. 前言 存储引擎是 MySQL 的核心组件之一,负责数据的存储和管...
    99+
    2023-08-16
    mysql 数据库 sql
  • MySQL存储引擎怎么理解
    这篇文章主要讲解了“MySQL存储引擎怎么理解”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQL存储引擎怎么理解”吧!今天发现了一个神奇的参数:-si...
    99+
    2024-04-02
  • MySQL的存储引擎
    1、存储引擎概念 • MySQL中的数据用各种不同的技术存储在文件中,每一种技术都使用不同的存储机制、索引技巧、锁定水平并最终提供不同的功能和能力,这些不同的技术以及配套的功能在MySQL中称为存储引擎 • 存储引擎是MySQL将数据存储在...
    99+
    2023-09-07
    mysql 数据库 java
  • MySQL—存储引擎(上)
    ♥️作者:小刘在C站 ♥️个人主页:小刘主页 ♥️每天分享云计算网络运维课堂笔记,努力不一定有回报,但一定会有收获加油!一起努力,共赴美好人生! ♥️树高千尺,落叶归根人生不易,人间真情 目录 1). 连接层 2). 服务层 ...
    99+
    2023-09-07
    服务器 运维 mysql
  • 如何更改MySQL表的存储引擎?
    MySQL ALTER TABLE 语句可以更改表的存储引擎,如下 -mysql> ALTER TABLE Student ENGINE = 'InnoDB'; Query OK, 0 rows affected (0...
    99+
    2023-10-22
  • MySQL改变表的存储引擎方法
    改变MySQL表的存储引擎方法 1、最简单的方法是使用alter table语句,例如 alter table tablename ENGINE = InnoDB; 上述方法可以适用于任何存储引擎的...
    99+
    2023-09-08
    mysql 数据库 sql
  • MySQL存储引擎是什么
    本篇内容主要讲解“MySQL存储引擎是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL存储引擎是什么”吧!MySQL 存储引擎存储引擎概述数据库最核...
    99+
    2024-04-02
  • MySQL中怎么设置存储引擎
    今天就跟大家聊聊有关MySQL中怎么设置存储引擎,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。MySQL设置存储引擎 1)查询存储引擎l ...
    99+
    2024-04-02
  • MySQL(7)-mysql索引和存储引擎
         本篇博客讲的是MySQL的索引的功能和使用 , 以及存储引擎的基本简介 一. mysql索引索引的简介和作用索引在MySQL中叫做"键" , 是存储引擎用于快速找到记录的一种数据结构 . 索引对良...
    99+
    2024-04-02
  • 3,mysql的存储引擎
    1,什么是存储引擎,存储引擎说白了就是如何存储数据,如何为存储的数据建立索引和如何更新,查询数据等技术的实现方法。因为在关系数据库中数据的存储是以表的形式存储的,所以存储引擎也可以成为表类型。 在Oracle和SQL Server等数据库中...
    99+
    2023-01-31
    引擎 mysql
  • Linux下怎么查看MySql存储引擎
    这篇文章主要介绍Linux下怎么查看MySql存储引擎,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在Oracle 和SQL Server等数据库中只有一种存储引擎,所有数据存储管理机制都是一样的。而MySql数据库...
    99+
    2023-06-27
  • MySQL存储引擎有什么用
    这篇文章将为大家详细讲解有关MySQL存储引擎有什么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、MySQL主要存储引擎:。Innodb 。myisam。memory。blackhole下...
    99+
    2023-06-22
  • mysql存储引擎有几种
    小编给大家分享一下mysql存储引擎有几种,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!mysql存储引擎答:常用的主要分为两种...
    99+
    2024-04-02
  • MySQL存储引擎有哪些
    这篇文章给大家分享的是有关MySQL存储引擎有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。MySQL有多种存储引擎,每种存储引擎有各自的优缺点,大家可以择优选择使用:MyI...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作