Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

MySql, làm cách nào để xuất các chỉ mục từ cơ sở dữ liệu phát triển sang cơ sở dữ liệu sản xuất của tôi?

Có lẽ ý bạn là "Làm cách nào để tạo lại các chỉ mục phát triển trên cơ sở dữ liệu trực tiếp (hiện có) của tôi"?

Nếu vậy, tôi nghĩ rằng các lệnh SQL mà bạn đang tìm kiếm là;

HIỂN THỊ TẠO BẢNG {tablename};

BẢNG ALTER THÊM INDEX {index_name} (col1, col2)

ALTER TABLE DROP INDEX {index_name}

Bạn có thể sao chép các hàng "KEY" và "CONSTRAINT" từ đầu ra "SHOW CREATE TABLE" và đưa nó trở lại "ALTER TABLE ADD INDEX".

dev mysql> SHOW CREATE TABLE city;
CREATE TABLE `city` (
  `id` smallint(4) unsigned NOT NULL auto_increment,
  `city` varchar(50) character set utf8 collate utf8_bin NOT NULL default '',
  `region_id` smallint(4) unsigned NOT NULL default '0',
  PRIMARY KEY  (`id`),
  KEY `region_idx` (region_id),
  CONSTRAINT `city_ibfk_1` FOREIGN KEY (`region_id`) REFERENCES `region` (`id`) ON UPDATE CASCADE ON DELETE RESTRICT
) ENGINE=InnoDB;

live mysql> SHOW CREATE TABLE city;
CREATE TABLE `city` (
  `id` smallint(4) unsigned NOT NULL auto_increment,
  `city` varchar(50) character set utf8 collate utf8_bin NOT NULL default '',
  `region_id` smallint(4) unsigned NOT NULL default '0',
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB;

live mysql> ALTER TABLE `city` ADD KEY `region_idx` (region_id);
live mysql> ALTER TABLE `city` ADD CONSTRAINT `city_ibfk_1` FOREIGN KEY (`region_id`) REFERENCES `region` (`id`) ON UPDATE CASCADE ON DELETE RESTRICT;

Hy vọng điều này sẽ hữu ích!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Thay thế một từ trong văn bản BLOB bằng MySQL

  2. mã php để kiểm tra pdo có sẵn không?

  3. Làm thế nào để cập nhật trên tầng trong MySQL?

  4. Sắp xếp bảng thẻ MYSQL

  5. Mysqldump được khởi chạy bởi cron và bảo mật mật khẩu