mysql update语句

MySQL--11 备份的原因

半世苍凉 提交于 2019-12-04 19:09:26
目录 一.备份的原因 二.备份的类型 三.备份的方式 四.备份策略 五.备份工具 六、企业故障恢复案例 1.模拟环境 2.模拟恢复数据过程: 一.备份的原因 运维工作的核心简单概括就两件事: 1)第一个是保护公司的数据. 2)第二个是让网站能7*24小时提供服务(用户体验)。 1)备份就是为了恢复。 2)尽量减少数据的丢失(公司的损失) 二.备份的类型 冷备份: 这些备份在用户不能访问数据时进行,因此无法读取或修改数据。这些脱机备份会阻止执行任何使用数据的活动。这些类型的备份不会干扰正常运行的系统的性能。但是,对于某些应用程序,会无法接受必须在一段较长的时间里锁定或完全阻止用户访问数据。 温备份: 这些备份在读取数据时进行,但在多数情况下,在进行备份时不能修改数据本身。这种中途备份类型的优点是不必完全锁定最终用户。但是,其不足之处在于无法在进行备份时修改数据集,这可能使这种类型的备份不适用于某些应用程序。在备份过程中无法修改数据可能产生性能问题。 热备份: 这些动态备份在读取或修改数据的过程中进行,很少中断或者不中断传输或处理数据的功能。使用热备份时,系统仍可供读取和修改数据的操作访问。 三.备份的方式 逻辑备份: 1. 逻辑备份 1)binlog 2)into outfile mysql> select * from world.city into outfile '/tmp

Mysql 的使用方法

旧街凉风 提交于 2019-12-04 19:08:11
Mysql 好处: 1 .程序稳定性 :这样任意一台服务所在的机器崩溃了都不会影响数据和另外的服务。 2 .数据一致性 :所有的数据都存储在一起,所有的程序操作的数据都是统一的,就不会出现数据不一致的现象 。   3 .并发 :数据库可以良好的支持并发,所有的程序操作数据库都是通过网络,而数据库本身支持并发的网络操作,不需要我们自己写socket 。   4 .效率 :使用数据库对数据进行增删改查的效率要高出我们自己处理文件很多。 单机程序(自己的db) 单击程序(公用db) Mysql: 是用于管理文件的一个软件。 --服务端软件 --socket服务端 --本地文件操作 -- 解析指令【sql语句】 --客户端软件(各种各样) -- socket客户端 -- 发送指令 -- 解析指令【sql语句】 PS: - DBMS数据库管理系统 - SQL语句 技能: - 安装 服务端和客户端 - 连接 - 学习SQL语句规则;指示服务端做任意操作 其他类似软件: 关系型数据库:sqllite,db2,oracle,access,sql server MySQL 非关系型数据库:MongoDB,redis 连接:(创建用户)      默认: 用户root 密码为空 use mysql;        # 进入my sql用户管理 select user,host from user; #

MySQL_基础知识

删除回忆录丶 提交于 2019-12-04 18:32:59
MySQL_基础知识 -----基础知识 1、什么是数据库? 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库 2、什么是关系型数据库、主键,外键,索引分别是什么? 关系型数据库是由多张能互相联接的二维行列表格组成的数据库 主关键字(primary key)是表中的一个或多个字段,它的值用于唯一地标识表中的某一条记录 外键表示了两个关系之间的相关联系。以另一个关系的外键作主关键字的表被称为主表,具有此外键的表被称为主表的从表。外键又称作外关键字 在关系数据库中,索引是一种单独的、物理的对数据库表中一列或多列的值进行排序的一种存储结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单 3、表的链接查询方式有那些,有什么区别? 交叉连接即笛卡儿乘积,是指两个关系中所有元组的任意组合 使用内连接时,如果两个表的相关字段满足连接条件,就从这两个表中提取数据并组合成新的记录 自连接是一种特殊的内连接,它是指相互连接的表在物理上为同一张表,但可以在逻辑上分为两张表 外连接是只限制一张表中的数据必须满足连接条件,而另一张表中的数据可以不满足连接条件的连接方式 4、SQL的select语句完成的执行顺序? 1、from 子句组装来自不同数据源的数据; 2、where 子句基于指定的条件对记录行进行筛选;   3、group by

MySQL语法基础

杀马特。学长 韩版系。学妹 提交于 2019-12-04 18:25:23
1.MySQL管理 1.1启动和关闭服务 # Linux service mysqld start # 启动 service mysqld stop # 关闭 service mysql restart # 重启 # Windows net start mysql # 启动 net stop mysql # 关闭 1.2常用命令 登录 mysql -u root -p[密码] [-P端口] [-h地址] USE 数据库名 列出 MySQL 数据库管理系统的数据库列表 mysql> USE sql_test; Database changed SHOW DATABASES: 列出 MySQL 数据库管理系统的数据库列表 mysql> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.00 sec) SHOW TABLES: 显示指定数据库的所有表,使用该命令前需要使用 use 命令来选择要操作的数据库 mysql> SHOW TABLES; +-------------------

第十章 数据库

邮差的信 提交于 2019-12-04 18:00:21
数据库 1.1 初始数据库 1.1.1 使用数据库的原因 很多功能如果只是通过操作文件来改变数据是非常繁琐的,程序员需要做很多事情 对于多台机器或者多个进程操作用一份数据,程序员自己解决并发和安全问题比较麻烦 需要自己处理一些数据备份,容错的措施 1.1.2 使用数据库的好处 本质:C/S架构的,操作数据文件的一个管理软件 好处: 帮助我们解决并发问题 能够帮助我们用更简单更快速的方式完成数据的增删改查 能够给我们提供一些容错、高可用的机制 帮助我们进行权限的认证 1.1.3 数据库管理系统(DBMS) 含义:专门用来管理数据文件,帮助用户更简洁的操作数据的软件 相关概念: DataBase Management System,简称DBMS 数据库服务器:运行数据库管理软件 数据库管理员DBA:管理数据库 数据库(DataBase,简称DB):即文件夹,用来组织文件/表 数据库是长期存放在计算机内、有组织、可共享的数据集合 数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享 表:即文件,用来存放多行内容/多条记录 数据(Data):描述事物的符号记录称为数据 分类: 关系型数据库: sql server oracle:收费的、比较严谨、安全性比较高 国企、事业单位使用 银行、金融行业使用 mysql:开源的、免费的

mysql 死锁 Deadlock found when trying to get lock; t

ぐ巨炮叔叔 提交于 2019-12-04 17:38:35
Deadlock found when trying to get lock; try restarting transaction 1213 - Deadlock found when trying to get lock; try restarting transaction 出现这个原因要记住一点就是:innodb的行锁 和解锁都是针对主键索引的。如果查询时根据索引锁表,但更新时却不是通过主键更新, 那么等待的解锁查询的进程将会报1213错误,程序里有可能返回一个null值 实例: table soldgoods (表名) soldgoodsID 索引 productid businessid 开启线程A 执行: set autocommit=0; select businessid from soldgoods where soldgoodsID = 'ac63837c76222e4a5419e2529d775ae4' for UPDATE; 查询得过结果 开启线程B 执行: set autocommit=0; select businessid from soldgoods where soldgoodsID = 'ac63837c76222e4a5419e2529d775ae4' for UPDATE; 查询等待解锁 这个时候在线程A中执行: update

mysql总结

独自空忆成欢 提交于 2019-12-04 16:27:27
1. Mysql 1.1. Index and table searching of Mysql 1.1.1. Basic concepts of Mysql and dbms What is sql: a storage for storing data and sql means Structured Query language Contents of sql : title and table DB: database是指长期存储在计算机内的,有组织,可共享的数据的集合。数据库中的数据按一定的数字模型组织、描述和存储,具有较小的冗余,较高的数据独立性和易扩展性,并可为各种用户共享。 DMS:database Management System是一种操纵和管理数据库的大型软件,除了mysql外,还有甲骨文oracle的,IBM的db2,sql server,Access Select now()不区分大小写,可以写成SELECT now()或者select now()或者Select now() 支持换行输出(但要以“;”结尾),不能对单词跨行 单行注释:--,多行注释:/*......*/ 安装mysql步骤: 这里我安装的时候出现错误5:说明没有用管理员身份运行。 从官网直接下载最新版(压缩版zip,mysql5.以后就不是msi了) 解压到本地目录,将mysql

mysql explain亲测

白昼怎懂夜的黑 提交于 2019-12-04 16:10:38
mysql explain亲测 1 where后面字段加索引:数据库类型如果是字符串类型 查询where的时候必须要用 字符串 类型必须一致 否则不用索引 type还是会是all的 ps:如果where有2个字段匹配 那就要2个字段加上索引 这里有必要说明下 btree索引支持匹配索引第一列 也就是说 info1和info2加了复合索引也同时给info1加了索引 2 left join 索引优化的时候 只需要右表字段加索引 还有where后字段加索引 ps左表尽可能的小 因为他不用索引的。。。 适当的时候where左表字段筛选 3 应尽量避免在 where 子句中使用 != 或 <> 操作符,否则将引擎放弃使用索引而进行全表扫描。 应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:select id from t where num=0 应尽量避免在 where 子句中使用or 来连接条件, 一般用in来代替or 或者 select * from mobantestinfo where info2=33 union all select * from mobantestinfo

Mysql事务

旧城冷巷雨未停 提交于 2019-12-04 15:22:31
一、事务的ACID属性 1.原子性 原子性是指事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生 2.一致性 事务必须使数据库从一个一致性状态变换到另外一个一致性状态。 一致性是指数据处于一种语义上的有意义且正确的状态。一致性是对数据可见性的约束,保证在一个事务中的多次操作的数据中间状态对其他事务不可见的。因为这些中间状态,是一个过渡状态,与事务的开始状态和事务的结束状态是不一致的。 举个粒子,张三给李四转账100元。事务要做的是从张三账户上减掉100元,李四账户上加上100元。一致性的含义是其他事务要么看到张三还没有给李四转账的状态,要么张三已经成功转账给李四的状态,而对于张三少了100元,李四还没加上100元这个中间状态是不可见的。 原子性和一致性的的侧重点不同:原子性关注状态,要么全部成功,要么全部失败,不存在部分成功的状态。而一致性关注数据的可见性,中间状态的数据对外部不可见,只有最初状态和最终状态的数据对外可见 隔离性是多个事物的时候, 相互不能干扰,一致性是要保证操作前和操作后数据或者数据结构的一致性,而我提到的事务的一致性是关注数据的中间状态,也就是一致性需要监视中间状态的数据,如果有变化,即刻回滚 (如果数据库中有没有执行完的事务,那就是不一致的,否则,就是一致的) 3.隔离性 事务的隔离性是指一个事务的执行不能被其他事务干扰

MySql常用命令总结

旧城冷巷雨未停 提交于 2019-12-04 13:45:21
1:使用SHOW语句找出在服务器上当前存在什么数据库: mysql> SHOW DATABASES; 2:2、创建一个数据库MYSQLDATA mysql> CREATE DATABASE MYSQLDATA; 3:选择你所创建的数据库 mysql> USE MYSQLDATA; (按回车键出现Database changed 时说明操作成功!) 4:查看现在的数据库中存在什么表 mysql> SHOW TABLES; 5:创建一个数据库表 mysql> CREATE TABLE MYTABLE (name VARCHAR(20), sex CHAR(1)); 6:显示表的结构: mysql> DESCRIBE MYTABLE; 7:往表中加入记录 mysql> insert into MYTABLE values (”hyq”,”M”); 8:用文本方式将数据装入数据库表中(例如D:/mysql.txt) mysql> LOAD DATA LOCAL INFILE “D:/mysql.txt” INTO TABLE MYTABLE; 9:导入.sql文件命令(例如D:/mysql.sql) mysql>use database; mysql>source d:/mysql.sql; 10:删除表 mysql>drop TABLE MYTABLE; 11:清空表 mysql