设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 创业者 数据 手机
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MyISAM表

发布时间:2022-06-30 13:47 所属栏目:115 来源:互联网
导读:MyISAM表: 1.不支持事务 MyISAM:对整张表进行加锁,锁全表而不是行。在读数据的时候,所有的表上都可以获得共享锁(读锁),每个连接都不互相干扰。在写的时候,或者排他锁,会把整个表进行加锁,而其他的连接请求(读和写)都处于等待。 MySQL的表级锁有
        MyISAM表:

  1.不支持事务
 
  MyISAM:对整张表进行加锁,锁全表而不是行。在读数据的时候,所有的表上都可以获得共享锁(读锁),每个连接都不互相干扰。在写的时候,或者排他锁,会把整个表进行加锁,而其他的连接请求(读和写)都处于等待。
  MySQL的表级锁有两种模式:表共享读锁(Table Read Lock)和表独占写锁(Table Write Lock)。MyISAM在执行查询语句(SELECT)前,会自动给涉及的所有表加读锁,在执行更新操作(UPDATE、DELETE、INSERT等)前,会自动给涉及的表加写锁。
 
  所以对MyISAM表进行操作,会有以下情况:
  a、对MyISAM表的读操作(加读锁),不会阻塞其他进程对同一表的读请求,但会阻塞对同一表的写请求。只有当读锁释放后,才会执行其它进程的写操作。
  b、对MyISAM表的写操作(加写锁),会阻塞其他进程对同一表的读和写操作,只有当写锁释放后,才会执行其它进程的读写操作。
 
  2.MyIASM的修复表
  [root@MyO test]# echo "a" >> myisam_tab.MYD
  mysql> check table myisam_tab;
  +-----------------+-------+----------+---------------------------------------------------+
  | Table           | Op    | Msg_type | Msg_text                                          |
  +-----------------+-------+----------+---------------------------------------------------+
  | test.myisam_tab | check | warning  | Size of datafile is: 102       Should be: 100     |
  | test.myisam_tab | check | error    | got error: 120 when reading datafile at record: 5 |
  | test.myisam_tab | check | error    | Corrupt                                           |
  +-----------------+-------+----------+---------------------------------------------------+
  3 rows in set (0.01 sec)
 
  mysql> repair table myisam_tab;
  +-----------------+--------+----------+----------+
  | Table           | Op     | Msg_type | Msg_text |
  +-----------------+--------+----------+----------+
  | test.myisam_tab | repair | status   | OK       |
  +-----------------+--------+----------+----------+
  1 row in set (0.01 sec)
 
  mysql> check table myisam_tab;
  +-----------------+-------+----------+----------+
  | Table           | Op    | Msg_type | Msg_text |
  +-----------------+-------+----------+----------+
  | test.myisam_tab | check | status   | OK       |
  +-----------------+-------+----------+----------+
  1 row in set (0.00 sec)

(编辑:ASP站长网)

    网友评论
    推荐文章
      热点阅读