04/10/2018, 20:18

Chuyển đổi tất cả table từ MyISAM sang InnoDB

Thông thường khi tạo 1 bảng trong MySQL sẽ có nhiều kiểu Storage Engine để bạn lựa chọn. Trong đó có 3 kiểu lưu trữ bảng được dùng nhiều nhất là InnoDB, MyISAM và Memory. Nếu vì một lý do nào đó mà bạn cần thay đổi kiểu Storage Engine từ MyISAM sang InnoDB hay ngược lại. Thì đoạn code PHP ...

Thông thường  khi tạo 1 bảng trong MySQL sẽ có nhiều kiểu Storage Engine để bạn lựa chọn. Trong đó có 3 kiểu lưu trữ bảng được dùng nhiều nhất là InnoDB, MyISAM và Memory.

innodb-vs-myisam

Nếu vì một lý do nào đó mà bạn cần thay đổi kiểu Storage Engine từ MyISAM sang InnoDB hay ngược lại. Thì đoạn code PHP sau sẽ giúp các bạn làm điều đó.

<?php
// connect your database here first
    $dbhost = 'localhost';
    $dbuser = 'root';
    $dbpass = 'root';

    $conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql');
    $dbname = 'databasename';
    mysql_select_db($dbname);

// Actual code starts here
    $sql = "SHOW tables";
    $rs = mysql_query($sql);
    while($row = mysql_fetch_array($rs))
    {
        $tbl = $row[0];
        $sql = "ALTER TABLE $tbl ENGINE=INNODB";
        mysql_query($sql);
    }
?>

Bây giờ việc cần làm của các bạn là thay đổi các tham số $dbhost,$dbuser,$dbpass,$dbname cho phù hợp với thông tin trên host của các bạn là được.

Tags: convert InnoDB MyISAM tables

Chuyên Mục: Sql

Bài viết được đăng bởi webmaster

  • Mercedex

    Để làm gì? Hai cái này ưu, nhược thế nào ad?

    • papyrut

      có rất nhiều bài viết giải thích lợi và hại giữa 2 loại lưu trữ này, mình không thể trong vài lời có thể giải thích rõ cho bạn được, Bạn có thể tham khảo bài viết http://stackoverflow.com/questions/12614541/whats-the-difference-between-myisam-and-innodb .Khi hiểu vấn đề, bạn có thể quay lại bài viết để tham khảo bạn nhé.

Bài liên quan

Chuyển đổi tất cả table từ MyISAM sang InnoDB

Thông thường khi tạo 1 bảng trong MySQL sẽ có nhiều kiểu Storage Engine để bạn lựa chọn. Trong đó có 3 kiểu lưu trữ bảng được dùng nhiều nhất là InnoDB, MyISAM và Memory. Nếu vì một lý do nào đó mà bạn cần thay đổi kiểu Storage Engine từ MyISAM sang InnoDB hay ngược lại. Thì đoạn code PHP ...

Vũ Văn Thanh viết 3 tuần trước

Hướng dẫn chuyển đổi module đơn giản từ 1.5 sang 1.7

Sau khi bạn cập nhật phiên bản joomla từ 1.5 sang 1.7 thì các module dùng cho jooma 1.5 đã không còn hoạt động trên phiên bản 1.7 và vì thế bạn cần cập nhật lại module để nó có thể hoạt tốt trên joomla 1.7. Bài viết này chỉ tập trung chuyển đổi module dạng đơn giản, tuy nhiên các bạn có thể từ ...

Trần Trung Dũng viết 3 tuần trước

Cách chuyển đổi từ plugin joomla 1.5 sang 1.7

Như bài trước mình đã giúp các bạn chuyển đổi module thì bây giờ chúng ta sẽ chuyển đổi cho plugin. Bài viết này cũng chỉ giúp bạn chuyển đổi từ dạng plugin đơn giản, và bạn có thể tham khảo để có thể chuyển đổi những plugin khác phức tạp hơn. Bước 1 : Đăng nhập vào trang admin của joomla ...

Hoàng Hải Đăng viết 3 tuần trước

[SQLSERVER] Hướng dẫn xóa tất cả table, store procedure, view, trigger bằng T-SQL

Bài viết hôm nay, mình sẽ hướng dẫn các bạn cách xóa tất cả table, trigger, store procedure, view trong sqlserver một cách đơn giản. Nếu bạn đang quản lý cơ sở dữ liệu sql và các bạn muốn xóa hết tất cả các table, store procedure, view, trigger đang ...

Trần Trung Dũng viết 3 tuần trước

Chuyện Elon Musk sa thải trợ lý gắn bó với anh 12 năm vì đòi tăng lương và bài học dành cho tất cả chúng ta

Rõ ràng một tỷ phú công nghệ bận rộn như Elon Musk cần rất nhiều nhân viên, giúp đỡ người trong công việc. Tuy nhiên, anh ta đã sẵn sàng sa thải một nhân viên gắn bó với mình hơn 12 năm và lý do đằng sau sẽ thể khiến bạn thay đổi suy nghĩ về sự nghiệp của mình. Trong cuốn sách ...

Vũ Văn Thanh viết 4 tuần trước
0