Site updated: 2024-05-11 11:41:12
This commit is contained in:
1 parent
b5f3f9e901
commit
58e8e89d23
219 files changed
+342
-330
No files matched your search
@@ -6,6 +6,19 @@
|
||||
"description": "天生我材必有用",
|
||||
"home_page_url": "https://hitoli.com",
|
||||
"items": [
|
||||
{
|
||||
"id": "https://hitoli.com/2024/05/10/MySQL%E8%A1%A8%E5%88%86%E5%8C%BA/",
|
||||
"url": "https://hitoli.com/2024/05/10/MySQL%E8%A1%A8%E5%88%86%E5%8C%BA/",
|
||||
"title": "MySQL表分区",
|
||||
"date_published": "2024-05-10T09:09:00.000Z",
|
||||
"content_html": "<h4 id=\"简介\"><a class=\"anchor\" href=\"#简介\">#</a> 简介</h4>\n<blockquote>\n<p>当单表数据量过大时,就需要考虑对表进行分表或者分区了。分表和分区都是用来解决数据库中大量数据存储和查询效率的问题,但它们的实现方式和解决的问题有所不同。</p>\n</blockquote>\n<blockquote>\n<p>分表(Sharding):</p>\n</blockquote>\n<ul>\n<li>分表是将一个大表按照某种规则拆分成多个较小的表,每个小表称为一个分表,这些分表可以分布在不同的数据库实例中。</li>\n<li>分表通常基于某种规则进行拆分,例如按照用户 ID、地理位置等进行拆分。</li>\n<li>分表的主要目的是解决单个表过大的问题,提高查询效率和并发能力。</li>\n</ul>\n<blockquote>\n<p>分区(Partitioning):</p>\n</blockquote>\n<ul>\n<li>分区是将一个表按照某种规则拆分成多个逻辑上的部分,每个部分称为一个分区,但这些分区仍然属于同一个表。</li>\n<li>分区通常基于某种规则进行拆分,例如按照时间、范围、哈希值等进行拆分。</li>\n<li>分区的主要目的是提高数据的管理和查询效率,通过将数据分散到不同的分区中,可以提高查询性能和管理灵活性。</li>\n</ul>\n<blockquote>\n<p>区别:</p>\n</blockquote>\n<ul>\n<li>实现方式:分表是将一个表拆分成多个子表,每个子表都是一个独立的表;而分区是将一个表按照某种规则拆分成多个逻辑上的部分,这些部分仍然属于同一个表。</li>\n<li>解决的问题:分表主要解决单个表过大的问题,提高查询效率和并发能力;而分区主要提高数据的管理和查询效率,通过将数据分散到不同的分区中,可以提高查询性能和管理灵活性。</li>\n<li>适用场景:分表适用于单表数据量巨大的情况,例如大型电商平台的订单表;而分区适用于需要根据某种规则对数据进行划分管理的情况,例如按照时间对日志表进行分区。</li>\n</ul>\n<blockquote>\n<p>本文章介绍的是如何对单表进行分区。</p>\n</blockquote>\n<h6 id=\"给表添加分区\"><a class=\"anchor\" href=\"#给表添加分区\">#</a> 给表添加分区</h6>\n<p><figure class=\"highlight sql\"><table><tr><td class=\"gutter\"><pre><span class=\"line\">1</span><br><span class=\"line\">2</span><br><span class=\"line\">3</span><br><span class=\"line\">4</span><br><span class=\"line\">5</span><br><span class=\"line\">6</span><br><span class=\"line\">7</span><br><span class=\"line\">8</span><br></pre></td><td class=\"code\"><pre><span class=\"line\"><span class=\"keyword\">ALTER</span> <span class=\"keyword\">TABLE</span> 表名</span><br><span class=\"line\"><span class=\"keyword\">PARTITION</span> <span class=\"keyword\">BY</span> <span class=\"keyword\">RANGE</span> COLUMNS (时间字段名) (</span><br><span class=\"line\">\t<span class=\"comment\">-- 分区条件(时间小于2022-02-01的数据放入p202201分区中)</span></span><br><span class=\"line\"> <span class=\"keyword\">PARTITION</span> p202201 <span class=\"keyword\">VALUES</span> LESS THAN (<span class=\"string\">'2022-02-01'</span>),</span><br><span class=\"line\"> <span class=\"keyword\">PARTITION</span> p202202 <span class=\"keyword\">VALUES</span> LESS THAN (<span class=\"string\">'2022-03-01'</span>),</span><br><span class=\"line\"> <span class=\"keyword\">PARTITION</span> p202203 <span class=\"keyword\">VALUES</span> LESS THAN (<span class=\"string\">'2022-04-01'</span>),</span><br><span class=\"line\"> <span class=\"comment\">-- 继续定义更多的分区...</span></span><br><span class=\"line\">);</span><br></pre></td></tr></table></figure></p>\n<h6 id=\"按指定表名创建当前年月的分区\"><a class=\"anchor\" href=\"#按指定表名创建当前年月的分区\">#</a> 按指定表名创建当前年月的分区</h6>\n<p><figure class=\"highlight sql\"><table><tr><td class=\"gutter\"><pre><span class=\"line\">1</span><br><span class=\"line\">2</span><br><span class=\"line\">3</span><br><span class=\"line\">4</span><br><span class=\"line\">5</span><br><span class=\"line\">6</span><br><span class=\"line\">7</span><br><span class=\"line\">8</span><br><span class=\"line\">9</span><br><span class=\"line\">10</span><br><span class=\"line\">11</span><br><span class=\"line\">12</span><br><span class=\"line\">13</span><br><span class=\"line\">14</span><br><span class=\"line\">15</span><br><span class=\"line\">16</span><br><span class=\"line\">17</span><br><span class=\"line\">18</span><br><span class=\"line\">19</span><br><span class=\"line\">20</span><br><span class=\"line\">21</span><br><span class=\"line\">22</span><br><span class=\"line\">23</span><br><span class=\"line\">24</span><br><span class=\"line\">25</span><br></pre></td><td class=\"code\"><pre><span class=\"Line truncated
|
||||
"tags": [
|
||||
"工作",
|
||||
"解决问题",
|
||||
"mysql",
|
||||
"表分区"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "https://hitoli.com/2024/04/30/Java%E5%90%8E%E7%AB%AF%E7%A6%81%E6%AD%A2%E6%8E%A5%E5%8F%A3%E7%9E%AC%E6%97%B6%E9%87%8D%E5%A4%8D%E8%B0%83%E7%94%A8/",
|
||||
"url": "https://hitoli.com/2024/04/30/Java%E5%90%8E%E7%AB%AF%E7%A6%81%E6%AD%A2%E6%8E%A5%E5%8F%A3%E7%9E%AC%E6%97%B6%E9%87%8D%E5%A4%8D%E8%B0%83%E7%94%A8/",
|
||||
@@ -136,9 +149,9 @@
|
||||
"Windows",
|
||||
"工具",
|
||||
"SpringBoot",
|
||||
"快速部署",
|
||||
"Bat",
|
||||
"批处理"
|
||||
"批处理",
|
||||
"快速部署"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -258,19 +271,6 @@
|
||||
"技术分享",
|
||||
"命令"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "https://hitoli.com/2023/04/16/K8S%E9%A1%B9%E7%9B%AE%E6%9C%AC%E5%9C%B0%E9%83%A8%E7%BD%B2%E6%AD%A5%E9%AA%A4/",
|
||||
"url": "https://hitoli.com/2023/04/16/K8S%E9%A1%B9%E7%9B%AE%E6%9C%AC%E5%9C%B0%E9%83%A8%E7%BD%B2%E6%AD%A5%E9%AA%A4/",
|
||||
"title": "K8S项目本地部署步骤",
|
||||
"date_published": "2023-04-16T04:39:00.000Z",
|
||||
"content_html": "<h4 id=\"本地部署步骤\"><a class=\"anchor\" href=\"#本地部署步骤\">#</a> 本地部署步骤</h4>\n<ol>\n<li>本机安装 wsl_update_x64.msi (已安装可忽略)</li>\n<li>本机安装 Docker Desktop Installer.exe (已安装可忽略)</li>\n<li>安装成功后,打开设置<br />\n<img data-src=\"https://nas.hitoli.com:18014/images/2023/04/16/ab557bae79bf.png\" alt=\"\" /></li>\n<li>选择 Docker Engine,粘贴进如下配置后重启<br />\n <figure class=\"highlight json\"><table><tr><td class=\"gutter\"><pre><span class=\"line\">1</span><br><span class=\"line\">2</span><br><span class=\"line\">3</span><br><span class=\"line\">4</span><br><span class=\"line\">5</span><br><span class=\"line\">6</span><br><span class=\"line\">7</span><br><span class=\"line\">8</span><br><span class=\"line\">9</span><br><span class=\"line\">10</span><br><span class=\"line\">11</span><br><span class=\"line\">12</span><br><span class=\"line\">13</span><br><span class=\"line\">14</span><br><span class=\"line\">15</span><br></pre></td><td class=\"code\"><pre><span class=\"line\"><span class=\"punctuation\">{</span></span><br><span class=\"line\"> <span class=\"attr\">"builder"</span><span class=\"punctuation\">:</span> <span class=\"punctuation\">{</span></span><br><span class=\"line\"> <span class=\"attr\">"gc"</span><span class=\"punctuation\">:</span> <span class=\"punctuation\">{</span></span><br><span class=\"line\"> <span class=\"attr\">"defaultKeepStorage"</span><span class=\"punctuation\">:</span> <span class=\"string\">"20GB"</span><span class=\"punctuation\">,</span></span><br><span class=\"line\"> <span class=\"attr\">"enabled"</span><span class=\"punctuation\">:</span> <span class=\"literal\"><span class=\"keyword\">true</span></span></span><br><span class=\"line\"> <span class=\"punctuation\">}</span></span><br><span class=\"line\"> <span class=\"punctuation\">}</span><span class=\"punctuation\">,</span></span><br><span class=\"line\"> <span class=\"attr\">"experimental"</span><span class=\"punctuation\">:</span> <span class=\"literal\"><span class=\"keyword\">false</span></span><span class=\"punctuation\">,</span></span><br><span class=\"line\"> <span class=\"attr\">"features"</span><span class=\"punctuation\">:</span> <span class=\"punctuation\">{</span></span><br><span class=\"line\"> <span class=\"attr\">"buildkit"</span><span class=\"punctuation\">:</span> <span class=\"literal\"><span class=\"keyword\">true</span></span></span><br><span class=\"line\"> <span class=\"punctuation\">}</span><span class=\"punctuation\">,</span></span><br><span class=\"line\"> <span class=\"attr\">"insecure-registries"</span><span class=\"punctuation\">:</span> <span class=\"punctuation\">[</span></span><br><span class=\"line\"> <span class=\"string\">"http://192.168.86.117"</span></span><br><span class=\"line\"> <span class=\"punctuation\">]</span></span><br><span class=\"line\"><span class=\"punctuation\">}</span></span><br></pre></td></tr></table></figure><br />\n<img data-src=\"https://nas.hitoli.com:18014/images/2023/04/16/93533dd8e043.png\" alt=\"\" /></li>\n<li>本项目 clean、compile、package<br />\n<img data-src=\"https://nas.hitoli.com:18014/images/2023/04/16/c14b2405a234.jpg\" alt=\"\" /></li>\n<li>添加一个 DockerFile 的启动配置<br />\n 192.168.86.117/zhsl/ys-zhslsgcgl:0.0.1<br />\n<img data-src=\"https://nas.hitoli.com:18014/images/2023/04/16/66f152c95d6e.png\" alt=\"\" /></li>\n<li>保证代码是最新的之后,运行上步的配置,会把刚才 install 生成的 jar 包上传到本机 Docker 生成一个本机 docker 镜像<br />\n<img data-src=\"https://nas.hitoli.com:18014/images/2023/04/16/4b915691271f.png\" alt=\"\" /></li>\n<li>命令行登录本地的 KUBESPHERE,把本机 docker 镜像上传到 KUBESPHERE<br />\n<figure class=\"highlight bash\"><table><tr><td class=\"gutter\"><pre><span class=\"line\">1</span><br></pre></td><td class=\"code\"><pre><span class=\"line\">docker login 192.168.86.117</span><br></pre></td></tr></table></figure><br />\n<img data-src=\"https://nas.hitoli.com:18014/images/2023/04/16/d1acb4e8e336.png\" alt=\"\" /><br />\n<figure class=\"highlight bash\"><table><tr><td class=\"gutter\"><pre><span class=\"line\">1</span><br></pre></td><td class=\"code\"><pre><span class=\"line\">docker images命令也可以看到本机docker镜像</span><br></pre></td></tr></table></figure><br />\n<img data-src=\"https://nas.hitoli.com:18014/images/2023/04/16/2b22d19f4649.png\" alt=\"\" /><br />\n<figure class=\"highlight bash\"><table><tr><td class=\"gutter\"><pre><span class=\"line\">1</span><br><span class=\"line\">2</span><br></pre></td><td class=\"code\"><pre><span class=\"line\">把本机docker镜像上传到KUBESPHERE</span><br><span class=\"line\">docker push 192Line truncated
|
||||
"tags": [
|
||||
"工作",
|
||||
"项目部署",
|
||||
"项目部署",
|
||||
"K8S"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in new issue
Block a user