learn.lianglianglee.com/专栏/MySQL实战宝典/index.html
2022-08-14 03:40:33 +08:00

198 lines
12 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<!-- saved from url=(0046)https://kaiiiz.github.io/hexo-theme-book-demo/ -->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1.0, user-scalable=no">
<link rel="icon" href="/static/favicon.png">
<title>note-submit</title>
<!-- Spectre.css framework -->
<link rel="stylesheet" href="/static/index.css">
<!-- theme css & js -->
<meta name="generator" content="Hexo 4.2.0">
</head>
<body>
<div class="book-container">
<div class="book-sidebar">
<div class="book-brand">
<a href="/">
<img src="/static/favicon.png">
<span>技术文章摘抄</span>
</a>
</div>
<div class="book-menu uncollapsible">
<ul class="uncollapsible">
<li><a href="/" class="current-tab">首页</a></li>
</ul>
<ul class="uncollapsible">
<li><a href="../">上一级</a></li>
</ul>
<ul class="uncollapsible">
<li>
<a href="/PDF">PDF</a>
</li>
<li>
<a href="/专栏">专栏</a>
</li>
<li>
<a href="/恋爱必修课">恋爱必修课</a>
</li>
<li>
<a href="/文章">文章</a>
</li>
<li>
<a href="/极客时间">极客时间</a>
</li>
</ul>
</div>
</div>
<div class="sidebar-toggle" onclick="sidebar_toggle()" onmouseover="add_inner()" onmouseleave="remove_inner()">
<div class="sidebar-toggle-inner"></div>
</div>
<script>
function add_inner() {
let inner = document.querySelector('.sidebar-toggle-inner')
inner.classList.add('show')
}
function remove_inner() {
let inner = document.querySelector('.sidebar-toggle-inner')
inner.classList.remove('show')
}
function sidebar_toggle() {
let sidebar_toggle = document.querySelector('.sidebar-toggle')
let sidebar = document.querySelector('.book-sidebar')
let content = document.querySelector('.off-canvas-content')
if (sidebar_toggle.classList.contains('extend')) { // show
sidebar_toggle.classList.remove('extend')
sidebar.classList.remove('hide')
content.classList.remove('extend')
} else { // hide
sidebar_toggle.classList.add('extend')
sidebar.classList.add('hide')
content.classList.add('extend')
}
}
function open_sidebar() {
let sidebar = document.querySelector('.book-sidebar')
let overlay = document.querySelector('.off-canvas-overlay')
sidebar.classList.add('show')
overlay.classList.add('show')
}
function hide_canvas() {
let sidebar = document.querySelector('.book-sidebar')
let overlay = document.querySelector('.off-canvas-overlay')
sidebar.classList.remove('show')
overlay.classList.remove('show')
}
</script>
<div class="off-canvas-content">
<div class="columns">
<div class="column col-12 col-lg-12">
<div class="book-navbar">
<!-- For Responsive Layout -->
<header class="navbar">
<section class="navbar-section">
<a onclick="open_sidebar()">
<i class="icon icon-menu"></i>
</a>
</section>
</header>
</div>
<div class="book-content"
style="max-width: 960px; margin: 0 auto; overflow-x: auto; overflow-y: hidden;">
<div class="book-post">
<p id="tip" align="center"></p>
<div><!--add content-->
<h1>MySQL实战宝典</h1>
<ul>
<li><a href = '\专栏\MySQL实战宝典\00 开篇词 从业务出发,开启海量 MySQL 架构设计.md.html'>00 开篇词 从业务出发,开启海量 MySQL 架构设计</a></li>
<li><a href = '\专栏\MySQL实战宝典\01 数字类型:避免自增踩坑.md.html'>01 数字类型:避免自增踩坑</a></li>
<li><a href = '\专栏\MySQL实战宝典\02 字符串类型:不能忽略的 COLLATION.md.html'>02 字符串类型:不能忽略的 COLLATION</a></li>
<li><a href = '\专栏\MySQL实战宝典\03 日期类型TIMESTAMP 可能是巨坑.md.html'>03 日期类型TIMESTAMP 可能是巨坑</a></li>
<li><a href = '\专栏\MySQL实战宝典\04 非结构存储:用好 JSON 这张牌.md.html'>04 非结构存储:用好 JSON 这张牌</a></li>
<li><a href = '\专栏\MySQL实战宝典\05 表结构设计:忘记范式准则.md.html'>05 表结构设计:忘记范式准则</a></li>
<li><a href = '\专栏\MySQL实战宝典\06 表压缩:不仅仅是空间压缩.md.html'>06 表压缩:不仅仅是空间压缩</a></li>
<li><a href = '\专栏\MySQL实战宝典\07 表的访问设计:你该选择 SQL 还是 NoSQL.md.html'>07 表的访问设计:你该选择 SQL 还是 NoSQL</a></li>
<li><a href = '\专栏\MySQL实战宝典\08 索引:排序的艺术.md.html'>08 索引:排序的艺术</a></li>
<li><a href = '\专栏\MySQL实战宝典\09 索引组织表:万物皆索引.md.html'>09 索引组织表:万物皆索引</a></li>
<li><a href = '\专栏\MySQL实战宝典\10 组合索引:用好,性能提升 10 倍!.md.html'>10 组合索引:用好,性能提升 10 倍!</a></li>
<li><a href = '\专栏\MySQL实战宝典\11 索引出错:请理解 CBO 的工作原理.md.html'>11 索引出错:请理解 CBO 的工作原理</a></li>
<li><a href = '\专栏\MySQL实战宝典\12 JOIN 连接:到底能不能写 JOIN.md.html'>12 JOIN 连接:到底能不能写 JOIN</a></li>
<li><a href = '\专栏\MySQL实战宝典\13 子查询:放心地使用子查询功能吧!.md.html'>13 子查询:放心地使用子查询功能吧!</a></li>
<li><a href = '\专栏\MySQL实战宝典\14 分区表:哪些场景我不建议用分区表?.md.html'>14 分区表:哪些场景我不建议用分区表?</a></li>
<li><a href = '\专栏\MySQL实战宝典\15 MySQL 复制:最简单也最容易配置出错.md.html'>15 MySQL 复制:最简单也最容易配置出错</a></li>
<li><a href = '\专栏\MySQL实战宝典\16 读写分离设计:复制延迟?其实是你用错了.md.html'>16 读写分离设计:复制延迟?其实是你用错了</a></li>
<li><a href = '\专栏\MySQL实战宝典\17 高可用设计:你怎么活用三大架构方案?.md.html'>17 高可用设计:你怎么活用三大架构方案?</a></li>
<li><a href = '\专栏\MySQL实战宝典\18 金融级高可用架构:必不可少的数据核对.md.html'>18 金融级高可用架构:必不可少的数据核对</a></li>
<li><a href = '\专栏\MySQL实战宝典\19 高可用套件:选择这么多,你该如何选?.md.html'>19 高可用套件:选择这么多,你该如何选?</a></li>
<li><a href = '\专栏\MySQL实战宝典\20 InnoDB Cluster改变历史的新产品.md.html'>20 InnoDB Cluster改变历史的新产品</a></li>
<li><a href = '\专栏\MySQL实战宝典\21 数据库备份:备份文件也要检查!.md.html'>21 数据库备份:备份文件也要检查!</a></li>
<li><a href = '\专栏\MySQL实战宝典\22 分布式数据库架构:彻底理解什么叫分布式数据库.md.html'>22 分布式数据库架构:彻底理解什么叫分布式数据库</a></li>
<li><a href = '\专栏\MySQL实战宝典\23 分布式数据库表结构设计:如何正确地将数据分片?.md.html'>23 分布式数据库表结构设计:如何正确地将数据分片?</a></li>
<li><a href = '\专栏\MySQL实战宝典\24 分布式数据库索引设计:二级索引、全局索引的最佳设计实践.md.html'>24 分布式数据库索引设计:二级索引、全局索引的最佳设计实践</a></li>
<li><a href = '\专栏\MySQL实战宝典\25 分布式数据库架构选型:分库分表 or 中间件 .md.html'>25 分布式数据库架构选型:分库分表 or 中间件 </a></li>
<li><a href = '\专栏\MySQL实战宝典\26 分布式设计之禅:全链路的条带化设计.md.html'>26 分布式设计之禅:全链路的条带化设计</a></li>
<li><a href = '\专栏\MySQL实战宝典\27 分布式事务:我们到底要不要使用 2PC.md.html'>27 分布式事务:我们到底要不要使用 2PC</a></li>
</ul>
</div>
</div>
<div>
</div>
</div>
</div>
</div>
</div>
<a class="off-canvas-overlay" onclick="hide_canvas()"></a>
</div>
<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v652eace1692a40cfa3763df669d7439c1639079717194"
integrity="sha512-Gi7xpJR8tSkrpF7aordPZQlW2DLtzUlZcumS8dMQjwDHEnw9I7ZLyiOj/6tZStRBGtGgN6ceN6cMH8z7etPGlw=="
data-cf-beacon='{"rayId":"70996b2f083d3d60","version":"2021.12.0","r":1,"token":"1f5d475227ce4f0089a7cff1ab17c0f5","si":100}'
crossorigin="anonymous"></script>
</body>
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-NPSEEVD756"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() {
dataLayer.push(arguments);
}
gtag('js', new Date());
gtag('config', 'G-NPSEEVD756');
var path = window.location.pathname
var cookie = getCookie("lastPath");
console.log(path)
if (path.replace("/", "") === "") {
if (cookie.replace("/", "") !== "") {
console.log(cookie)
document.getElementById("tip").innerHTML = "<a href='" + cookie + "'>跳转到上次进度</a>"
}
} else {
setCookie("lastPath", path)
}
function setCookie(cname, cvalue) {
var d = new Date();
d.setTime(d.getTime() + (180 * 24 * 60 * 60 * 1000));
var expires = "expires=" + d.toGMTString();
document.cookie = cname + "=" + cvalue + "; " + expires + ";path = /";
}
function getCookie(cname) {
var name = cname + "=";
var ca = document.cookie.split(';');
for (var i = 0; i < ca.length; i++) {
var c = ca[i].trim();
if (c.indexOf(name) === 0) return c.substring(name.length, c.length);
}
return "";
}
</script>
</html>