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.
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.
Chuyên Mục: Sql
Bài viết được đăng bởi webmaster
-
Mercedex
-
papyrut
-