`
AllenHU0320
  • 浏览: 83050 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
使用mysqlhotcopy命令行工具创建备份: mysqlhotcopy是一段Perl语言编写的脚本,将FLUSH TABLES,LOCK TABLES以及cp/scp等命令封装调用,能够直接对数据库或某些指定的表对象创建备份,方便用户执行 mysqlhotcopy只用于MyISAM和ARCHIVE引擎的表对象,不能适用于InnoDB表对象 [mysql@mysql1 ~]$ mysqlhotcopy -u system -p 123456 -S /data/mysqldata/3306/mysql.sock mysql /tmp Flushed 32 tables with re ...
利用CSV存储引擎加载数据: mysql>create table ld_csv1(id int not null default ‘0’,username varchar(5) not null,city varchar(6) not null,email varchar(50) not null) engine=csv default charset=UTF8; $more /tmp/loaddata.txt > /data/mysqldata/3306/data/hugcdb/ld_csv1.CSV mysql>select * from ld_csv1;   ...
初始化选项文件: 对于UNIX/Linux平台,MySQL程序默认会按照如下顺序扫描下列路径,并使用找到的第一个匹配的选项文件 /etc/my.cnf /etc/mysql/my.cnf SYSCONFDIR/my.cnf 通过CMake源码编译时指定的SYSCONFDIR参数指定的路径 $MYSQL_HOME/my.cnf ~/.my.cnf 本例中为 /data/mysqldata/3306/my.cnf   错误日志文件: 不仅仅是记录错误信息,MySQL服务进程即mysqld启动或关闭的信息也会被记录进来。错误日志文件是在启用mysqld时,通过log-erro ...
InnoDB表对象的限制条件: 最大和最小 InnoDB日志文件最大不超过512G InnoDB系统表空间最少需要10M空间 默认数据库中数据页的大小为16K ANALYZE TABLE语句收集统计信息不是特别准确, SHOW TABLE STATUS语句不能列出InnoDB表的实际统计数据,记录行数、平均记录长度等信息都仅是预估值 SELECT COUNT(*) FROM TBL语句时,InnoDB必须检索全表,MySQL建议对于InnoDB引擎表的这类需求,考虑通过创建中间表专门记录表行数方式来处理 对于AUTO_INCREMENT列,建议创建单列索引 DELETE F ...
联机修改表对象结构: 在MySQL5.6之前 1.创建一个结构与原表对象完全相同的临时表(隐式操作,该对象用户不可见),并将该表的结构修改为期望的结构 2.锁定原表,只许查询,不许修改 3.将原表数据复制到新创建的临时表,类似insert into new_tb select * from old_tb; 4.将原表重命名,新创建的临时表名称修改为正式表名,之后释放锁定,删除原表 在MySQL5.6以后,联机DDL修改InnoDB表提供有限支持
InnoDB引擎内部在保存数据到数据库时,每一行都有3个自动生成的内部列: DB_TRX_IDG:占用6B,用来标记事务的标示符,记录下最后一个事务的操作类型(更新或修改),删除操作会被当成update处理,只是在其中设置特殊的位置指出实际操作为delete DB_ROLL_PRT:占用TB,被称为回滚标记,用于指定UNDO日志记录写到回滚段中的位置。如果记录被更新,那么UNDO日志会包含用于构造记录更新前状态的所有必要信息 DB_ROW_ID:占用6B

InnoDB存储引擎

InnoDB存储引擎: InnoDB就是为了满足大数据量环境下高性能为目标而设计的 遵循ACID模型,支持事务,拥有从服务崩溃中恢复的能力,最大限度地保护用户的数据。对于服务器软、硬件问题导致的宕机,MySQL拥有自动进行故障恢复能力 支持行级锁,提升多用户并发时的读写性能 InnoDB引擎表组织数据时按照主键(Primary Keys)聚簇,通过主键查找数据时性能极为优异 InnoDB支持外键(Foreign-Key)约束 InnoDB拥有自己独立的缓存池(对应innodb_buffer_pool_size

MyISAM存储引擎

每个MyISAM表对象都是由3个独立的操作系统文件组成 .frm:对象结构定义文件,用于存储表对象的结构 .MYD:数据文件,用于存储表数据 .MYI:索引文件,用来存储表的索引信息 (system@localhost) [mysql]> create table t_myisam(id int) engine=myisam; MySQL服务自带的mysql和information_schema两个系统数据库,其内部表对象就是使用MyISAM引擎,并且用户不能将其转换成其他存储引擎类型。 MyISAM缺点是锁粒度太粗(表级锁),不支持事务。优点是查询快,写入快。

MySQL存储引擎

MySQL是Pluggable Storage Engines插件式存储引擎 是一种数据存取和处理方式 查看当前MySQL数据库支持什么引擎: (system@localhost) [(none)]> show engines; Engine:存储引擎名 Support:当前是否支持 Commnet:注释信息 Transactions:是否支持事务 XA:是否支持分布式事务 Savepoint:是否支持保存点     MySQL数据库中常见存储引擎包括MyISAM,InnoDB,
MEMORY存储引擎: (system@localhost) [mysql]> create table t_mem1(id int) engine=memory; MEMORY存储引擎的表只拥有一个独立的磁盘文件,扩展名为.frm,用来存储表结构的定义。 MEMORY引擎表能够使用的最大内存空间不超过max_heap_table_size系统变量设定的值,该变量默认情况下是16MB。   CSV存储引擎: (system@localhost) [mysql]> create table t_csv1(id int not null default 0,v1 varc ...

MySQL字符集

字符集就是指符号和字符编码的集合 用户可以在服务器、数据库、表甚至列一级进行设置 校对规则就是指定义的一种比较字符集中字符的规则 查看数据库支持的字符集: (system@localhost) [(none)]> show character set; 最常用的字符集 GBK GB2312 UTF8 某个字符集支持哪些校对规则: (system@localhost) [(none)]> show collation like 'latin1%';   服务端设置默认字符集: 编译MySQL软件时指定 -DDEFAULT_CHARSET=utf8 \ ...
MySQL官方给出了两种非常规方式重置系统管理账户两种方法: 1.启动MySQL服务时附加参数(--init-file),使其执行含有密码重置的脚本,达到修改账户密码的目的 2.启动MySQL服务时通过附加特殊的参数,使其跳过权限验证,而后登 ...

MySQL历史文件

在Linux/UNIX系统下,使用mysql命令行工具执行的所有操作,都会被记录到一个名为.mysql_history的文件,默认保存在当前用户的根目录下 两种方案: 第一种修改操作系统层的MYSQL_HISTFILE环境变量,将其值改为/dev/null,这样所有操作都会被输出到空 第二种保留.mysql_history文件,做一个软连接 $ln -f -s /dev/null ~/.mysql_history
MySQL数据库验证权限有3个维度:我是谁、从哪里来、到那里去 哲学家探究人生的终极命题   能不能连接: 在MySQL数据库中验证用户,需要检查3项值:用户名、用户密码和来源主机。分别对应mysql库中的user表的user、password和host三列   能不能执行操作: 连接到数据库之后,能不能执行操作,比如说建库、建表、改表、查询或修改数据等,除了mysql.user外,还有mysql.db,mysql.tables_priv,mysql.columns_priv,mysql.proc_priv  

管理MySQL库与表

MySQL中的表对象是基于库维护的,表属于某个库,不管对象是由谁创建的,只要库在,表就在。每个MySQL数据库都是由多个数据库组成的(一经创建,默认至少就得有4个),而Oracle中的数据库则是一个整体。 information_schema:记录用户、表、视图等元数据信息,提供类似oracle数据字典的功能,类似于oracle数据库中的system表空间。是虚拟出来的库,由mysql实例构建和维护,对象保存在内存中,在磁盘上找不到对应的物理存在。对于该库,用户唯一能做的事情就是查询。 mysql:记录用户权限、帮助、日志等信息,提供类似oracle数据字典的功能,类似于oracle
Global site tag (gtag.js) - Google Analytics