MySQL存储引擎入门基础知识
2018/08/13 11:09:07 来源:Linux社区 作者:Linux

两种:MyISAM:

            MyISAM是默认的存储引擎。 每个MyISAM在磁盘上存储成三个文件,每一个文件的名字均以表的名字开始,扩展名指出文件类型。

            .frm文件存储表定义;

          ·MYD (MYData)文件存储表的数据;

            .MYI (MYIndex)文件存储表的索引。

              InnoDB(MySQL5.7支持的版本):

事务型数据库的首选引擎,支持ACID事务,支持行级锁定。InnoDB是为处理巨大数据量时的最大性能设计。InnoDB存储引擎完全与MySQL服务器整合,InnoDB存储引擎为在主内存中缓存数据和 索 引而维持它自己的缓冲池。InnoDB存储它的表&索引在一个表空间中,表空间可以包含数个文件(或原始磁盘分区)。这与MyISAM表不同,比如在MyISAM表中每个表被存在分离的文件中。InnoDB 表可以是任何尺寸,即使在文件尺寸被限制为2GB的操作系统上。InnoDB默认地被包含在MySQL二进制分发中。Windows Essentials installer使InnoDB成为Windows上MySQL的默认表。

查看表使用的存储引擎类型的方法:

  1.show  table  status  from  库名  where  name  =  ‘表名’

  2.use  数据库;

      show  create  table  表名;

修改表使用的存储引擎类型的方法:

  1.alter  table  table_name  engine =引擎

  2.vim  /etc/my.cnf

    在【mysqld】下添加 default- storage-engine=MyISAM

    然后重启服务,创建新表即生效

  3.create  table  表名(属性 类型) engine = 引擎

  4.mysql_convert_table_format命令

批量修改数据库表的存储引擎类型

1.在CentOS 7下搭建MySQL 5.5

tar zxvf mysql-5.5.24.tar.gz  -C  /opt/

确认安装 gcc 、 gcc-c++ 、make、cmake
ncurses-devel、
bison、
libaio-devel的软件包

---------------添加mysql用户并加入到mysql组----------------
useradd  -s /sbin/nologin mysql
mkdir /usr/local/mysql

cd /opt/mysql-5.5.24.tar.gz

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql     
-DMYSQL_UNIX_ADDR=/home/mysql/mysql.sock           
-DDEFAULT_CHARSET=utf8                           
-DDEFAULT_COLLATION=utf8_general_ci
-DWITH_EXTRA_CHARSETS=all                         
-DWITH_MYISAM_STORAGE_ENGINE=1                     
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_MEMORY_STORAGE_ENGINE=1
-DWITH_READLINE=1                                 
-DENABLED_LOCAL_INFILE=1                           
-DMYSQL_DATADIR=/home/mysql                       
-DMYSQL_USER=mysql                                   
-DMYSQL_TCP_PORT=3306                                 

make  &    make install 

chown -R mysql.mysql /usr/local/mysql       

export PATH=$PATH:/usr/local/mysql/bin/  \*开机时刷新*\         

或者可选择vi /etc/profile 在最后一行加入后 运行source /etc/profile

cp support-files/my-medium.cnf /etc/my.cnf                 

cp support-files/mysql.server /etc/init.d/mysqld             

chmod 755 /etc/init.d/mysqld                           
chkconfig --add /etc/init.d/mysqld                     
chkconfig mysqld --level 35 on                         

--------------初始化数据库--------------

/usr/local/mysql/scripts/mysql_install_db \
--user=mysql \
--ldata=/var/lib/mysql \
--basedir=/usr/local/mysql \
--datadir=/home/mysql

ln  -s  /var/lib/mysql/mysql.sock  /home/mysql/mysql.sock          /*直接建立软连接*/

vi /etc/init.d/mysqld
basedir=/usr/local/mysql
datadir=/home/mysql

systemctl  start  mysqld.service

mysqladmin  –u  root  password  'abc123'    //设置root密码

2.进入MySQL

安装 perl-DBI  和perl-DBD-MySQL :

    yum  install  perl-DBI  -y

    yum  install  perl-DBD-MySQL  -y   

      mysql_convert_table_format  --host=localhost  --user=root  --password=abc123  --socket=/tmp/mysql.sock  --engine=MyISAM school bank banks    //批量修改

Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址https://www.linuxidc.com/Linux/2018-08/153485.htm


7

本栏最新