mysql 各版本的一些命令差异

mysql 各版本的一些命令差异:

show innodb status\G mysql-5.1

show engines innodb status\G mysql-5.5

 

关于grant授权 mysql-5.5 的 user@'%'不包含localhost


  1. MySQL 4.1/5.0/5.1/5.5/5.6各版本的主要区别  
  2.  
  3. 1、4.1 增加了子查询的支持,字符集增加UTF-8,GROUP BY语句增加了ROLLUP,mysql.user表采用了更好的加密算法。  
  4.  
  5. 2、5.0 增加了Stored procedures、Views、Cursors、Triggers、XA transactions的支持,增加了INFORATION_SCHEMA系统数据库。  
  6.  
  7. 3、5.1 增加了Event scheduler,Partitioning,Pluggable storage engine API ,Row-based replication、Global级别动态修改general query log和slow query log的支持。  
  8.  
  9. 4、5.5的新特征  
  10.  
  11. 1)默认存储引擎更改为InnoDB  
  12.  
  13. 2)提高性能和可扩展性  
  14.  
  15. a. 提高了默认线程并发数(innodb_thread_concurrency)  
  16.  
  17. b. 后台输入/输出线程控制(innodb_read_io_threads、innodb_write_io_threads)  
  18.  
  19. c. 主线程输入/输出速率控制(innodb_io_capacity)  
  20.  
  21. d.  操作系统内存分配程序使用控制(innodb_use_sys_malloc)  
  22.  
  23. e.   适应性散列索引(Hash Index)控制,用户可以关闭适应性散列功能。  
  24.  
  25. f.   插入缓冲(Insert Buffering)控制,用户可以关闭innodb的插入缓冲功能。  
  26.  
  27. g.  通过快速加锁算法提高可扩展性,innodb不在使用代理(posix)线程,而是使用原生的独立操作来完成互斥和读写锁定。  
  28.  
  29. h.  恢复组提交(Restored Group Commit)  
  30.  
  31. i.   提高恢复性能  
  32.  
  33. j.  多缓冲池实例  
  34.  
  35. k.  多个回滚段(Multiple Rollback Segments),之前的innodb版本最大能处理1023个并发处理操作,现在mysql5.5可以处理高达128K的并发事物,  
  36.  
  37. l.   Linux系统固有的异步输入/输出,mysql5.5数据库系统也提高了linux系统的输入输出请求的并发数。  
  38.  
  39. m. 扩展变化缓冲:添加了删除缓冲和清除缓冲  
  40.  
  41. n.  改善了日志系统互斥和单独刷新(Flush)列表互斥  
  42.  
  43. o.  改善清除程序进度,在mysql5.5中清楚操作线程是独立的线程,并支持并发,可以使用innodb_purge_treads配置。  
  44.  
  45. p.  改善事务处理中的元数据锁定。例如,事物中一个语句需要锁一个表,会在事物结束时释放这个表,而不是像以前在语句结束时释放表。  
  46.  
  47. 3)提高实用性  
  48.  
  49. a.  半同步复制(Semi-synchronous Replication)  
  50.  
  51. b.  复制Heartbeat  
  52.  
  53. c.  中继日志自动恢复(Automatic Relay Log Recovery)  
  54.  
  55. d.  根据服务器过滤项复制(Replication Per Server Filtering)  
  56.  
  57. e.  从服务器复制支持的数据类型转换(Replication Slave Side Data Type Conversions)  
  58.  
  59. 4)提高易管理性和效率  
  60.  
  61. a.  建立快速索引(Faster Index Creation)  
  62.  
  63. b.  高效的数据压缩(Efficient Data Compression)   
  64.  
  65. c.  为大物件和可变长度列提供高效存储   
  66.  
  67. d.   增加了INFORMATION_SCHEMA表,新的表提供了与InnoDB压缩和事务处理锁定有关的具体信息。  
  68.  
  69.    
  70.  
  71. 5)提高可用性  
  72.  
  73. a.  针对SIGNAL/RESIGNAL的新SQL语法  
  74.  
  75. b.   新的表/索引分区选项。MySQL5.5将表和索引RANG和LIST分区范围扩展到了非整数列和日期,并增加了在多个列上分区的能力。  
  76.  
  77. 6)改善检测和诊断  
  78.  
  79.  Mysql5.5引入了一种新的性能架构(performancn_shema,P_S),用于监控mysql监控服务器运行时的性能。
  80.  
  81.  5、5.6的新特征 1)InnoDB现在可以限制大量表打开的时候内存占用过多的问题(比如这里提到的)(第三方已有补丁) 2)InnoDB性能加强。如分拆kernel mutex;flush操作从主线程分离;多个perge线程;大内存优化等 3)InnoDB死锁信息可以记录到 error 日志,方便分析 4)MySQL5.6支持延时复制,可以让slave跟master之间控制一个时间间隔,方便特殊情况下的数据恢复。 5)表分区功能增强 6)MySQL行级复制功能加强,可以降低磁盘、内存、网络等资源开销(只记录能确定行记录的字段即可) 7)Binlog实现 crash-safe 8)复制事件采用crc32校验,增强master/slave 复制数据一致性 9)新增 log_bin_basename (以前variables里面没有binlog位置信息,对数据库的监管很不方便) 
时间: 2024-08-07 16:54:09

mysql 各版本的一些命令差异的相关文章

javamysql-SQL文件导入MySQL显示版本不对

问题描述 SQL文件导入MySQL显示版本不对 you have an error in your sql syntax,check the manual that corresponds to your MYSQL server version for the right syntax.. 解决方案 sql有语法问题,可能不符合mysql的语法 解决方案二: 检查你的sql文件是否有错误 解决方案三: mysql导入.sql文件MYSQL 导入执行sql文件MySQL导入.sql文件及常用命令

查看mysql数据库版本方法总结

当你接手某个mysql数据库管理时,首先你需要查看维护的mysql数据库版 本:当开发人员问你mysql数据库版本时,而恰好你又遗忘了,那么此时也需要去查看mysql数据库的版本...............下文总结一下 Linux平台下查看mysql数据库的方法.个人觉得总结的比较全面了.   方法1:登录数据库时,你可以看到对应mysql数据库的版本信息,如下所示:   [root@DB-Server ~]# mysql -u root -p Enter password: Welcome

MySQL中使用SHOW PROFILE命令分析性能的用法整理_Mysql

show profile是由Jeremy Cole捐献给MySQL社区版本的.默认的是关闭的,但是会话级别可以开启这个功能.开启它可以让MySQL收集在执行语句的时候所使用的资源.为了统计报表,把profiling设为1   mysql> SET profiling = 1;   之后在运行一个查询 mysql> SELECT COUNT(DISTINCT actor.first_name) AS cnt_name, COUNT(*) AS cnt -> FROM sakila.film

MySQL连接及基本信息查看命令汇总_Mysql

学习PHP就不得不提MySQL,虽然有phpMyadmin这样的工具可以图形化操作数据库,但我还是想借学习PHP的机会使用下命令行方式操作数据库.以下就是我的学习小结,包括命令行连接数据库,查看当前用户,查看当前使用的存储引擎,查看MySQL版本等基本命令. 连接数据库 命令格式:mysql -h hostname -u username -p -h指定要连接的MySQL数据库所在的主机,如果是本机,可以省略. -u指定登录的用户名,如果不指定,默认是操作系统的登录用户名. -p指定密码.可以在

MySQL之SHOW TABLE STATUS命令

MySQL之SHOW TABLE STATUS命令 官网:https://dev.mysql.com/doc/refman/5.6/en/show-table-status.html 13.7.5.37 SHOW TABLE STATUS Syntax Press CTRL+C to copy SHOW TABLE STATUS [{FROM | IN} db_name] [LIKE 'pattern' | WHERE expr] SHOW TABLE STATUS works likes SH

MySQL essential版本和普通版本有什么区别?

MySQL 的官网下载地址:http://www.mysql.com/downloads/ 在这个下载界面会有几个版本的选择. 1. MySQL Community Server 社区版本,开源免费,但不提供官方技术支持. 2. MySQL Enterprise Edition 企业版本,需付费,可以试用30天. 3. MySQL Cluster 集群版,开源免费.可将几个MySQL Server封装成一个Server. 4. MySQL Cluster CGE 高级集群版,需付费. 5. My

MySQL嵌入式版本的小程序例子

MySQL嵌入式版本越来越式微了.碰巧有个小应用用到了它,顺便记录一下.  文档可以参考http://dev.mysql.com/doc/refman/5.6/en/libmysqld-example.html,看起来年久失修的样子,没法一看就懂.  希望下面这个简化的步骤可以起到点作用.  1. 下载代码并且进行版本编译.这个还比较简单,文档说的也很靠谱.  $ cmake . -DCMAKE_INSTALL_PREFIX=/home/mysql -DWITH_EMBEDDED_SERVER=

linux下Mysql的启动关闭的命令

 下面我来为各位介绍linux下Mysql的启动关闭的命令,有需要了解的朋友不防进入看看吧.     linux下Mysql的启动关闭(本文基于centos6.4.mysql5.7.3),mysql安装在/usr/local/mysql目录下: [root@lnmp ~]# /usr/local/mysql/bin/mysql --version /usr/local/mysql/bin/mysql  Ver 14.14 Distrib 5.7.3-m13, for Linux (x86_64)

pyqt-Qt不同版本环境变量命令冲突怎么办?

问题描述 Qt不同版本环境变量命令冲突怎么办? 之前装了PyQt4,里面自带了一些Qt4的组件,设置了环境变量,环境变量路径下有qmake.exe. 现在又装了Qt5,设置了环境变量,路径下也有qmake.exe. 现在当我进行PyQt和Qt开发的时候,需要将这两个环境变量顺序调换,否则会因为调用不同版本的qmake.exe而报错. 有没有简单一些的解决办法? 谢谢啦! 解决方案 可以解决,编译时候直接指定路径,就不会冲突. 解决方案二: 可以指定路径啊 ,在编译下的环境变量中设置,或者编译后面