Globalization and Localization When discussing multiple languages and characters sets, you will run into the following important terms: Character sets are collections of letters and symbols. Encodings are the internal representations of the members o…
INDEX BAD EXAMPLE Improving Overall Performance Inserting Multiple Rows INSTEAD OF Inserting a Single Row Inserting Retrieved Data BAD EXAMPLE INSERT INTO Customers VALUES(NULL, 'Pep E. LaPew', '100 Main Street', 'Los Angeles', 'CA', ', 'USA', NULL,…
之前 manipulate 表里的数据,现在则是 manipulate 表本身. INDEX 创建多列构成的主键 自动增长的规定 查看上一次插入的自增 id 尽量用默认值替代 NULL 外键不可以跨引擎 添加字段与删除字段 & 定义外键 复杂表结构的修改 删除表与修改表名 非常工整的 . .模范脚本: CREATE TABLE customers ( cust_id int NOT NULL AUTO_INCREMENT, cust_name ) NOT NULL , cust_address…
INDEX Updating Data The IGNORE Keyword Deleting Data Faster Deletes Guidelines for Updating and Deleting Data Updating Data UPDATE customers SET cust_name = 'The Fudds', cust_email = 'elmer@fudd.com' ; To delete a column's value, you can set it to NU…
索引 理解 GROUP BY 过滤数据 vs. 过滤分组 GROUP BY 与 ORDER BY 之不成文的规定 子查询 vs. 联表查询 相关子查询和不相关子查询. 增量构造复杂查询 Always More Than One Solution As explained earlier in this chapter, although the sample code shown here works, it is often not the most efficient way to perf…
索引 AND. OR 运算顺序 IN Operator VS. OR NOT 在 MySQL 中的表现 LIKE 之注意事项 运用通配符的技巧 Understanding Order of Evaluation 与大多数编程语言一样, AND 比 OR 有更高的优先级. Using Parentheses in WHERE Clauses Whenever you write WHERE clauses that use both AND and OR operators, use parent…
终于结束这本书了,最后两章的内容在官方文档中都有详细介绍,简单过一遍.. 首先是数据备份,最简单直接的就是用 mysql 的内置工具 mysqldump MySQL 8.0 Reference Manual  /  Backup and Recovery  /  Using mysqldump for Backups  /  Dumping Data in SQL Format with mysqldump 导入也巨简单,因为导出文件是 .sql 直接用 source 就 ok 了. 另外,需要…
限制用户的操作权限并不是怕有人恶意搞破坏,而是为了减少失误操作的可能性. 详细文档:https://dev.mysql.com/doc/refman/8.0/en/user-account-management.html 关于用户的信息都存储在 mysql 数据库下的 user 表中,查看所有用户名: mysql> USE mysql; mysql> SELECT user FROM user; +------------------+ | user | +------------------…
InnoDB 支持 transaction ,MyISAM 不支持. 索引: Changing the Default Commit Behavior SAVEPOINT 与 ROLLBACK TO COMMIT 与 ROLLBACK When working with transactions and transaction processing, there are a few keywords that'll keep reappearing. Here are the terms you…
推荐看这篇mysql 利用触发器(Trigger)让代码更简单 以及 23.3.1 Trigger Syntax and Examples 感觉有点像 Spring 里的 AOP 我们为什么需要触发器? -- 因为我们希望当某件事情发生的时候另外一些事情自动发生.. 例如 在向某张表插入数据的时候,同时向另外一张表插入数据. “向某张表插入数据” 就是事件(导火线),而“向另外一张表插入数据” 就是我们希望自动发生的事情(被触发的事情). 可是为什么不自己手动“ 先向某表插入数据,再向另外一张表…
mysql中游标的使用案例详解(学习笔记)这篇讲得相当直白好懂了. 索引: cursor 基础讲解 mysql 循环 书上的整合代码 cursor 基础讲解 cursor 有点类似于 JDBC 中的 ResultSet ,允许我们在执行 SELECT 之后,一行一行地 FETCH 数据. 它只能被用在存储过程中!如果把存储过程比作函数,cursor 只能在这个函数体中(存储过程的内部)定义.打开.关闭,一旦存储过程执行完毕,它将不再存在(可以把 cursor 理解为一个局部变量). 定义一个 c…
以前写过类似的东西,用来自动生成数据. 你可以将 Stored Procedure 理解为可以重复使用的批处理文件. Stored Procedure 非常有用,我们应该尽可能地去使用它. 那么,应用 Stored Procedure 有什么好处呢? 封装过程,简化复杂的操作 代码重用.共用,所有人都用同一个存储过程,减少出错的可能 简化变更管理,如果业务逻辑发生改变,修改存储过程就可以了,上层软件甚至不需要知道发生了什么改变. 提高性能,存储过程比单条执行要快 MySQL 语言让存储过程更加强…
INDEX 由于性能.智能结果等多方面原因,在搜索文本时,全文搜索一般要优于通配符和正则表达式,前者为指定列建立索引,以便快速找到对应行,并且将结果集智能排序.启用查询扩展可以让我们得到未必包含关键字的相关行,启用布尔模式可以让我们指定搜索内容不应包含的单词.各个关键词的权重等. 全文索引使用说明. 不要在导入数据前进行全文索引. WARNING 不是所有数据库引擎都支持全文搜索.MyISAM 支持全文索引,InnoDB 不支持全文索引. PS. 据说 MySQL 5.6 以上版本的 InnoD…
INDEX UNION Rules WHERE VS. UNION UNION VS. UNION ALL Sorting Combined Query Results UNION Rules As you can see, unions are very easy to use. But a few rules govern exactly which can be combined: A UNION must be comprised of two or more SELECT statem…
记文档还是相当重要的! 索引 假名的三个用途 自交(Self Joins) 自然交(Natural Joins) Outer Joins Using Table Aliases Using aliases for column names and calculated fields To shorten the SQL syntax To enable multiple uses of the same table within a single SELECT statement 自交 像下面这…
索引 理解相关表. foreign key JOIN 与保持参照完整性 关于JOIN 的一些建议,子查询 VS. 联表查询 我发现MySQL 的官方文档里是有教程的. SQL Tutorial - W3Schools The SQL Tutorial for Data Analysis | SQL Tutorial - Mode Analytics Understanding Relational Tables The key here is that having multiple occur…
索引 正则表达式:MySQL only supports a small subset of what is supported in most regular expression implementations 计算字段,应用程序计算 VS. 数据库计算,Concat. 假名 + - * / 测试 算数. 函数表达式 MySQL 函数. API 聚集函数示例 Using MySQL Regular Expressions → 默认大小写不敏感 mysql> SELECT '312HEWQKH…
索引 排序检索的数据 SQL 过滤 vs. 应用程序过滤 简单 Where 补充:大小写敏感. BETWEEN. IS NULL Sorting Retrieved Data mysql> SELECT * -> FROM manga -> ORDER BY manga_name; +----------+-----------------------+-------------------+--------------+ | manga_id | manga_name | manga_…
索引 查看表.文档操作 检索必须知道的两件事 数据演示由谁负责 通配符.非必要不用 检索不同的行 限制结果集.分页查找 运用数据库.表全名 命令后加分号对于很多 DBMS 都不是必要的,但是加了也没有坏处 Learning About Databases and Tables Learning More About SHOW In the mysql command-line utility, execute command HELP SHOW; to display a list of all…
索引 database table schema Primary Key MySQL 书的第一章介绍一些基本的概念.理解数据库是掌握 MySQL 非常重要的一个部分. 第二章简单介绍了 MySQL 以及若干个 MySQL工具,熟练掌握 mysql Command-Line Utility 就行了. database The term database is used in many different ways, but for our purposes a database is a coll…
索引 视图是啥 为什么需要视图 使用视图的规则 如何使用视图 视图应用实例 别用视图更新数据! 视图是啥 理解视图的最佳方式就是看下面这个例子. SELECT cust_name, cust_contact FROM customers, orders, orderitems WHERE customers.cust_id = orders.cust_id AND orderitems.order_num = orders.order_num AND prod_id = 'TNT2'; 上面的请…
一台MySQL服务器突然Crash了,检查进程 ps -ef | grep -i mysql 发现mysqld进程已经没有了, 检查错误日志时发现MySQL确实Crash了.具体如下所示: 注意日志中的时间: 09:49:52 UTC是UTC时间(协调世界时间) , 加上8小时就是东八区的时间17:45:52,日志前段是UTC时间,后面又是系统时间.这个需要注意! 09:49:52 UTC - mysqld got signal 11 ; This could be because you hi…
最近想要整个 blog,记录自己工作.学习中的点滴.Wordpress 自然是首选,因为内容才是关键,所以也就不怕别人说太 low.网上大部份都是讲 wordpress 配合 apache 的安装教程.基于 nginx 的只有几篇比较老的,有些已经不太适用了.捣鼓了小半天,终于搞定,分享出来,也给需要的朋友一个参考. 一.下载 & 解压 wwordpress 先新建一个临时目录,用于存放各种临时的安装包,例如 ~/temp mkdir ~/temp cd ~/temp 下载 wordpress…
centos7  mysql 5.7.19安装 1.解压文件 [root@centos3 ~]# tar -zxvf mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz -C /usr/local/ 2.重命名 [root@centos3 ~]# cd /usr/local/ [root@centos3 local]# mv mysql-5.7.19-linux-glibc2.12-x86_64/ mysql 3.配置环境变量 [root@centos3  lo…
最近有台服务器的MySQL经常crash,为了进一步定位问题,开启了mysql core file功能,开启步骤如下,供参考 [开启步骤] 1. my.cnf文件中增加2个配置选项 [mysqld] core_file [mysqld_safe] core-file-size=unlimited 2.修改系统参数,配置suid_dumpable echo 1 >/proc/sys/fs/suid_dumpable 3.重启mysql服务,配置生效 service mysql restart [生…
原文:零元学Expression Blend 4 - Chapter 27 PathlistBox被Selected时的蓝底蓝框问题 最近收到网友Cloud的来信,询问我有关放进PathlistBox的物件,被选取後会出现蓝底蓝框的问题 经由他的同意,我决定把这个实作上遇到的问题及解决的方式,用一篇文章来跟大家分享 ? 最近收到网友Cloud的来信,询问我有关放进PathlistBox的物件,被选取後会出现蓝底蓝框的问题 经由他的同意,我决定把这个实作上遇到的问题及解决的方式,用一篇文章来跟大家…
主从复制可以使MySQL数据库主服务器的主数据库,复制到一个或多个MySQL从服务器从数据库,默认情况下,复制异步; 根据配置,可以复制数据库中的所有数据库,选定的数据库或甚至选定的表. Mysql 主从复制的优点: 横向扩展解决方案 在多个从库之间扩展负载以提高性能.在这种环境中,所有写入和更新在主库上进行.但是,读取可能发生在一个或多个从库上.该模型可以提高写入的性能(由于主库专用于更新),同时在多个从库上读取,可以大大提高读取速度. 数据安全性 由于主库数据被复制到从库,从库可以暂停复制过…
MySQL 5.7.19 源码安装 查看系统: # cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core) 安装依赖包 # yum -y install ncurses-devel libaio-devel cmake gcc gcc-c++ bison perl-Time-HiRes 下载安装boost 下载, 解压 mysql 下载包 # wget http://nchc.dl.sourceforge.net/project/…
本文教程为大家分享了mysql 8.0.19安装教程,供大家参考,具体内容如下 1.下载.zip安装文件 2.根目录存放my.ini,文件路径用“/”分割,例如: [mysqld] port=3306 basedir=D:/mysql-8.0.19-winx64/bin datadir=D:/mysql-8.0.19-winx64/data max_connections=20 max_connect_errors=10 character-set-server=UTF8MB4 default-…
1 前言 linux下安装MySQL的方式有很多种,包括以仓库的方式安装(yum,apt,zypper),以包的方式安装(rpm,deb),以docker方式安装,从压缩包解压安装,从源码编译安装,这里使用的是最后一种,从源码编译安装. 编译安装需要大量的耐心与时间,而且还会遇到非常多奇奇怪怪的问题,因此,需要极大的毅力,很有可能一万次失败也换不来一次的成功,请做好心理准备. 2 准备工作 下面是安装要求,已安装的可以跳过. cmake boost gcc ncurses openssl bis…