mysql 改myisam_将mysql从MyISAM更改为INNODB
今天更新django中的表字段,由于mysql从5.1升级到5.7。以前的外键关联必须从MYISAM改新为INNODB才可以继续。
过程有点刺激,但还好,只要想清楚了过程,提前作好备份,就没啥大问题。
一,django里的mysql配置:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'PDB',
'USER': 'user',
'PASSWORD': 'xxxx',
'HOST': '1.2.3.4',
'PORT': '3306',
'OPTIONS': {"init_command": "SET default_storage_engine=INNODB;"},
},
}
二,查看现在库里表的存储引擎
SELECT table_name, table_type, engine FROM information_schema.tables
WHERE table_schema = 'xxxxDB' ORDER BY table_name DESC;
三,生成更改所有数据表引擎的mysql语句
SELECT CONCAT( 'ALTER TABLE ', TABLE_NAME, ' ENGINE=InnoDB;' )
FROM information_schema.tables
WHERE table_schema = 'xxxxDB';
四,将这些语句放到mysql里执行一次
...
ALTER TABLE A ENGINE=InnoDB;
ALTER TABLE B ENGINE=InnoDB;
ALTER TABLE C ENGINE=InnoDB;
ALTER TABLE H ENGINE=InnoDB;
ALTER TABLE D ENGINE=InnoDB;
ALTER TABLE E ENGINE=InnoDB;
...
五,在my.cnf里将默认引擎设置为innodb,然后,使用show engine,即可看到mysql的默认存储引擎了。
show engine
六,有了以上操作之后,在django里使用makemigrations,migrate命令,就没啥问题了。如果上面步骤没操作出问题,记得先复原数据库,再操作。
标签:ENGINE,INNODB,MyISAM,mysql,InnoDB,TABLE,table,ALTER
来源: https://www.cnblogs.com/aguncn/p/11084088.html
mysql 改myisam_将mysql从MyISAM更改为INNODB相关推荐
- mysql从myisam_将MySQL从MyISAM转换成InnoDB错误和解决办法
原来自己用的是为了装的, 所以在设置database usage(如下图1)的时候按照discuz官方的建议,选的都是Non-Transactional Database Only(只支持MyISAM ...
- mysql改utf8mb4后速度慢_更改MySQL数据库的编码为utf8mb4
更改MySQL数据库的编码为utf8mb4 utf8mb4编码是utf8编码的超集,兼容utf8,并且能存储4字节的表情字符. 采用utf8mb4编码的好处是:存储与获取数据的时候,不用再考虑微信昵称 ...
- ubuntu mysql 改密码_ubuntu——mysql的安装(1)
介绍:MySQL 是一种开源数据库管理系统,通常作为流行的LAMP(Linux,Apache,MySQL,PHP /Python/ Perl)堆栈的一部分安装.它使用关系数据库和SQL(结构化查询语言 ...
- mysql 修改单表导入大小_MySQL更改大库大表存储引擎方案
一. 概述 检查库中myisam的表, sql如下: SELECT * FROM `tables` WHERE table_schema = 'UAR_STATISTIC' AND ENGINE = ...
- 10067mysql_MYSQL数据库mysql Non-Transactional Database Only(只支持MyISAM)
<MYSQL数据库mysql Non-Transactional Database Only(只支持MyISAM)>要点: 本文介绍了MYSQL数据库mysql Non-Transacti ...
- ip变更 mysql无法启动_ubuntu mysql 更改IP导致mysql无法启动
bind-address = 127.0.0.1 => bind-address= 136.129.20.168 IP要这么改 这么改远程连不上,那么需要把这行整行注释掉,重启MYSQL,tel ...
- windows进入mysql改user_mysql:Windows修改MySQL数据库密码(修改或忘记密码)
今天练习远程访问数据库时,为了方便访问,就想着把数据库密码改为统一的,以后我们也会经常遇到MySQL需要修改密码的情况,比如密码太简单.忘记密码等等.在这里我就借鉴其他人的方法总结几种修改MySQL密 ...
- 阿里云mysql目录_mysql数据库目录存放位置更改-阿里云开发者社区
mysql Oracle官方下载 类型特多 看起来很让人头痛 我们选择 Download MySQL Community Server 在这个下载网站 选择平台是ORACL& RED HAT ...
- mysql密码一般设置什么格式_mysql更改密码_如何更改mysql root用户密码
windows平台下如何修改mysql数据库密码 1.关闭正在运行的MySQL服务:net stop mysql或 在windows 任务管理器中结束 mysqld.exe 进程或在 管理工具里面的服 ...
最新文章
- 如何Docker化任意一个应用
- RabbitMQ 的引言
- 成功解决ImportError: cannot import name ‘Imputer‘
- centos7开放端口
- c++ 9.程序流程结构
- winshark重要数据结构
- 个人成长中,关于规划设计的思考
- 括号匹配问题(C++、堆栈)
- 洛谷P5269 欧稳欧再次学车
- 利用反射生成SQL语句
- Linux学习笔记(10)
- 为ASP.NET封装的SQL数据库访问类(转)
- ​富士通代理4KBit I2C铁电存储器MB85RC04V
- Adobe flash player10安装失败的解决方法
- Deep Retinex Decomposition for Low-LightEnhancement (2018 BMCV,含代码)
- 使用CamlBuilder生成CAML查询语句
- TL-WR720N路由器Android安卓不能连接外网问题解决
- Qt焦点事件 setFocusPolicy
- 辽宁省二本计算机学校有哪些,辽宁省二本大学都有哪些
- adb remount 失败