mysql数据库种类介绍及 mysqldump备份数据

一  Nosql 指的是非关系型数据库,作为传统关系型数据库的一个有效补充,针对特定场景。以高性能和使用便利为目一

的功能特异化的数据库产品

Nosql特点:

Noosql数据库存储不需要固定的表结构

1 他不是否定关系数据库,而是作为关系数据库的一个重要补充

2 Nosql为了高性能高并发而产生的

3 Nosql典型产品memcache(纯内存) 一重启就丢数据

redis(持久化缓存)  持久化缓存

mongodb

二  非关系型数据库种类:

1 键值存储数据库

2 列存储数据库

3 面向文档的数据库  mongodb

4 图形数据库

三 关系型数据库

1  oracle主要应用范围:传统大企业 大公司 政府 金融 证券

关系型数据库比较笨重一个软件很大 几个G左右

2  mysql数据库互联网公司最常用的公司 适用于大中小型网站,开源,体积小速度快成本低等特点

3 mariaDB 数据库诞生  mysql被收购

4 SQL server 数据库 微软开发的大型数据库 和sybase合作开发

5 access和offcices 绑定的一个入门级小型的桌面数据库,性能和安全性一般,可提供个人管理或者小型网站之用

四 数据库的备份

【1】sql语句如何优化:

1 抓慢sql  show for testlist 执行一下查看慢的  给慢sql添加索引  2 在配置文件里添加参数 添加索引  增加慢sql的查询日志收集  脚本切割  分析定时任务发给db

【2】 网站打开慢 给出排查方法,如何使因为导致数据库慢导致,如何排查解决?分析并举例

思路:

负载均衡到web服务器                      web到存储                  php到数据库           web到数据库

访问静态网页一下                         动态网页慢php问题                                uptime可定负载均衡高

慢 则是负载高 cpu高  查看io              cure慢的话是存储问题                             创建索引  创建sql慢查询日志

测试环境 生产环境  开发环境

五  数据库备份:

mysqldump -u 用户名 -p 数据库名  表名 >备份的文件名

mysqldump -uroot -poldboy123  -S/data/3306/mysql.sock -B oldboy oldboy-gbk >/opt/bak_$(data +%F).sql

-B 参数的作用  不加-B 第一个是库 后面都是表  加上-B 第一个是库 后面的都是表

--compact 减少输出 但不用于生产

六 mysqldump的工作原理

利用mysqldump命令把数据备份的过程,就是直接拿mysql数据库里面的数据以逻辑的sql语句的形式直接输出或者生成备份的过程

mysql分库脚本

mysql -uroot -poldboy123 -e "show databases;"|egrep -v "_schema|atabase"|sed -r ‘s#^(.*)#mysqldump  -uroot -poldboy123 --events -B \1 |gzip >/opt/\1.sql.gz#g‘|bash

备份单个表:

mysqldump -uroot -poldboy23 -S /data/3306/mysql.scok oldboy test --compact

分表备份:

mysqldump -u 用户名 -p 数据库名 表名 > 备份的文件名

mysqldump -uroot -poldboy student >/opt/table1.sql

备份多个表:

mysqldump -u 用户名 -p 数据库名 表名1 表名2 > 备份的文件名

分表备份缺点:文件多 很碎

备份表结构:-d

利用mysqldump -d参数只备份表的结构 备份oldboy库的所有表的结构

备份表数据 -t  备数据库里面的数据

七 刷新binlog参数  参数-F

mysqldump用于定时对某一时刻的数据全备,例如00 点进行备份

增量备份:当有数据写入到数据库时,还会同时把更新出的sql语句写入到对应的文件。这个文件叫做binlog文件

例子:

10点丢失数据需要恢复数据:

1  00点时刻备份的.sql数据还原到数据库,这时数据库恢复到了00点

2  00-10点数据,就需要binlog里恢复

binlog文件生效则需要log-bin

-F 作用:binlog日志 生成新的而文件  将来新的增量恢复从这个文件开始

--master-data 在备份语句里添加CHANGES MASTER 语句及binlog文件

及位置点信息

当--master-data=1时 可执行的change master语句  一般等于1时做的是从库

当--master-data=2时 注释的change master语句     一般用于做单纯的增量恢复

--master-data 除了增量恢复确定临界点外 做主从复制时作用更大

八 mysqldump的关键参数说明:

mysqldump的参数:

-B 备份多格库

-t 只备份数据

-d 只备份表结构

-T 分离库表和数据成不同的文件,数据是文本,非sql语句

-A 备份所有库

-L --lock-all-tables 锁表

备份时一定要锁表,在某一时刻数据库不能更新

当--master-data=1时 可执行的change master语句  一般等于1时做的是从库

当--master-data=2时 注释的change master语句     一般用于做单纯的增量恢复

--master-data 除了增量恢复确定临界点外 做主从复制时作用更大

--single-transaction  适合innodb属无数据库备份

InnoDB 表在备份时  通常启用选项  --single-transaction来保证备份的一致性,实际上它的工作原理是设定本次会话的隔离级别:repeataable read 以确保本次会话dump时 。不会看到其他会话已经提交了数据

-q --quick   ACID会话隔离数据  -enevts事务性是innoDB独有的特性  事物有隔离性

未完待续。。。。。。。

时间: 2024-10-23 17:47:37

mysql数据库种类介绍及 mysqldump备份数据的相关文章

[转]MySQL数据库引擎介绍、区别、创建和性能测试的深入分析

本篇文章是对MySQL数据库引擎介绍.区别.创建和性能测试进行了详细的分析介绍,需要的朋友参考下 数据库引擎介绍 MySQL数据库引擎取决于MySQL在安装的时候是如何被编译的.要添加一个新的引擎,就必须重新编译MYSQL.在缺省情况下,MYSQL支持三个引擎:ISAM.MYISAM和HEAP.另外两种类型INNODB和BERKLEY(BDB),也常常可以使用.如果技术高超,还可以使用MySQL+API自己做一个引擎.下面介绍几种数据库引擎:  ISAM:ISAM是一个定义明确且历经时间考验的数

Unity3D_WebPlayer_PHP连接MySQL数据库_3_php登录和读取所有数据

1,PHP登录代码[login.php] 完整代码如下 <?php $name=$_POST['pname']; $password=$_POST['ppwd']; if ($name && $password){ $conn=mysql_connect("xxxxxxxx","Mysql用户名","MYsql密码") or die("SomeConstrError"); mysql_select_db(

怎么恢复用mysqldump备份数据和恢复数据

1.备份: 写一个脚本: !/bin/bash` echo 'dump begin' Now=$(date +%d-%m-%Y--%H:%M:%S) //获取当前时间 File=backup-$Now.sql.gz //组成文件名 mysqldump -u zc_test -pzc_test2016 -h test.rtdream.com --port 3307 --all-databases --single-transaction --routines --add-drop-table --

MYSQL数据库事务介绍

一.数据库事务介绍 简单地说,事务就是指逻辑上的一组SQL语句操作,组成这组操作的各个SQL语句, 执行时要么全成功要么全失败. 列如:小明给小红转账5块钱,流程如下: 1.从小明银行卡取出5元,计算式money-5 2.把上面5块钱打入小红的账号上,小红收到5块,money+5 上述转账的过程,对应的sql语句为: update  xiaoming_account set money=money-5 where name='xiaoming'; update  xiaohong_account

MySQL数据库引擎介绍、区别、创建和性能测试的深入分析

http://www.jb51.net/article/38004.htm 数据库引擎介绍 MySQL数据库引擎取决于MySQL在安装的时候是如何被编译的.要添加一个新的引擎,就必须重新编译MYSQL.在缺省情况下,MYSQL支持三个引擎:ISAM.MYISAM和HEAP.另外两种类型INNODB和BERKLEY(BDB),也常常可以使用.如果技术高超,还可以使用MySQL+API自己做一个引擎.下面介绍几种数据库引擎:  ISAM:ISAM是一个定义明确且历经时间考验的数据表格管理方法,它在设

MySql数据库基本介绍和基本语法

一.数据库简单介绍 1. 按照数据库的发展时间顺序,主要出现了以下类型数据库系统: Ø 网状型数据库 Ø 层次型数据库 Ø 关系型数据库 Ø 面向对象数据库 上面4中数据库系统中,关系型数据库使用最为广泛.面向对象数据库则是由面向对象语言催生的新型数据库,目前的一些数据库系统,如:SQL Server 2005.Oracle10g等都开始增加面向对象的特性. 二.常用基本SQL语句/语法 Ø SQL语句基础理论 SQL是操作和检索关系型数据库的标准语言,标准SQL语句可用于操作然后关系型数据库.

Mysql数据库理论基础之十二 ---- 备份与还原

一.简介 由MySQL AB公司开发,是最流行的开放源码SQL数据库管理系统,主要特点: 1.是一种数据库管理系统 2.是一种关联数据库管理系统 3.是一种开放源码软件,且有大量可用的共享MySQL软件 4.MySQL数据库服务器具有快速.可靠和易于使用的特点 5.MySQL服务器工作在客户端/服务器模式下,或嵌入式系统中 InnoDB存储引擎将InnoDB表保存在一个表空间内,该表空间可由数个文件创建.这样,表的大小就能超过单独文件的最大容量.表空间可包括原始磁盘分区,从而使得很大的表成为可能

mysql 数据库引擎介绍

1.定义:数据库引擎是用于存储.处理和保护数据的核心服务.利用数据库引擎可控制访问权限并快速处理事务,从而满足企业内大多数需要处理大量数据的应用程序的要求. 使用数据库引擎创建用于联机事务处理或联机分析处理数据的关系数据库.这包括创建用于存储数据的表和用于查看.管理和保护数据安全的数据库对象(如索引.视图和存储过程). 2.数据库索引介绍 MySQL数据库引擎取决于MySQL在安装的时候是如何被编译的.要添加一个新的引擎,就必须重新编译MYSQL.在缺省情况下,MYSQL支持三个引擎:ISAM.

MySQL数据库日志介绍

第1章 binlog日志 1.1 binlog日志介绍 MySQL的binlog日志作用是用来记录mysql内部增删改等对mysql数据库有更新的内容的记录(对数据库的改动),对数据库查询的语句如show,select开头的语句,不会被binlog日志记录.binlog日志只要用于数据库的增量恢复,以及主从复制. mysql数据目录下的如下文件就是mysql的binlog日志: [[email protected] ~]# ll /data/3306/ total 88 -rw-rw---- 1