0%

索引是什么 索引(在MySQL中也叫键(key) )是存储引擎用于快速查找记录的一种数据结构。索引对于性能拥有至关重要的地位。尤其是当表中的数据量越来越大,索引对于性能的影响愈发重要。反之不恰当的索引对于性能也会急剧下降。 索引是一把双刃剑 索引的优与劣 索引的优点 索引提高数据检索的效率 * 降低数据库的I/O 成本(将随机IO变为顺序I/O ) * 减少扫描行数 通过使用索引,可以在查询的过程中,使用优化隐藏器,提高系统的性能。 索引的缺点 时间方面 创建索引和维护索引要耗费时间,这种时间随着数据量的增加而增加 空间方面 索引需要占
阅读全文 »

Linux平台下MySQL的安装 LSB Version: :core-4.1-amd64:core-4.1-noarch Distributor ID: CentOS Description: CentOS Linux release 7.9.2009 (Core) Release: 7.9.2009 Codename: Core ldd (GNU libc) :2.17 前置工作 删除mariadb 1 yum remove -y mariadb-libs.x86_64 yum 安装rpm 进入MySQL的yum仓库,如下图所示 官方rpm包: https
阅读全文 »

本博客采用github page实现部署,但由于github的性质无法有效的进行分离快速部署。 必须博客展示页,必须以username.github.io结尾,这样感觉不是很方便 部署前基本流程为,部署github page -> 手动上传源码到对应仓库。 那么我们是否可以直接push到私有源码仓库,出发二段部署从实现自动的博客部署,此时我们只需要关心与维护自己的博客源码,再也不用刻意的关注部署了 说干就干 前置条件 ssh部署 1 ssh-keygen -t rsa -C "your email" 若配置了全局的git email 可使用ssh-keygen -t rs
阅读全文 »

mysql优化老生常谈了,但却也离不开业务。脱离业务来讲mysql可以从两个方面进行优化 * 安全优化(业务持续性) * 性能优化(业务高效性) 所谓优化,个人认为有两大需要提前知道的稳定性和业务可持续性通常比性能更重要,**优化是由业务需要驱使的 ** 通常优化也与操作系统、运行环境等息息相关,结合业务适合自己才是最好的。 安全优化 足够强度的安全是保证业务正常运行的基石,安全优化通常可以以系统安全,应用程序安全,与sql安全。 系统安全 具体详情请参考Linux系统安全 物理安全 物理环境安全,小微企业一般使用云服务器,大型企业一般有多
阅读全文 »

NFS实践 安装NFS 1 2 3 4 5 6 7 8 9 # 下载nfs相关软件(全成员) yum install -y nfs-common nfs-utils rpcbind # 创建NFS共享文件夹,以及授权(需要root) mkdir /nfs && chmod 766 /nfs && chown nfsnobody /nfs/ # 声明共享文件权限(NFS主服务器) echo "/nfs *(rw,no_root_squash,no_all_squash,sync)" >> /etc/exports # exportfs -r systemctl restart rpcbi
阅读全文 »

mysql用户管理 DCL(Data Control Language,数据控制语言):用于定义数据库的访问权限和安全级别,主要包含GRANT、REVOKE、COMMIT和ROLLBACK等语句。 mysql用户管理主要涉及到用户的增删改查与权限管理 mysql中存在4个控制权限的表,分别为user表,db表,tables_priv表,columns_priv表 权限表的验证过程 1. 先从user表中的Host,User,Password这3个字段中判断连接的ip、用户名、密码是否存在,存在则通过验证。 2. 通过身份认证后,进行权限分配,按照user,db,tables_p
阅读全文 »

引子 在构建、部署、测试等情景中下不知你也是否遇到过这么几个问题,构建慢、依赖安装慢、重复性构建。 以至于每一次采用docker来构建时,都需要等上那么几分钟。 有时候是非常的浪费时间, 那么是否有方法进行一次分离构建呢。当然正如docker口号所说的那般" Build once,Run anywher", 那么该如何解决“构建慢、依赖安装慢、重复性构建”的问题呢, 看似三个或者更多问题,其实归根结底是一个问题——分层构建 分层构建 想深层理解docker的分层构建,不得不从docker的设计特性出发。虚拟机与docker结构,如下图所示。 一层一层的分层结构,那么所谓分层构建只
阅读全文 »

错误如下 cni already has an IP address different from … 如图所示 缘由 node之前反复添加 解决方案 1 2 # 找到对应的节点 kubectl get pod --all-namespace -o wide 在对应node上执行如下命令 1 2 3 4 5 6 7 8 9 # 重置Kubernetes集群 kubeadm reset && systemctl stop kubelet && systemctl stop docker # 删除残留 rm -rf /var/lib/cni/ && rm -rf /va
阅读全文 »

当部署完Kubernetes集群之后,为了便于管理Web UI或许是一种新型且快捷的部署方式。本节将以部署工具helm搭建Kubernetes Dashboard。以及拍坑 helm相关文档: * helm * CNCF Helm 项目过程报告 helm初始化 在这里推荐使用Kubernetes dashboard官方的仓库。在helm初始化完成后可使用如下命令进行helm repo初始化 1 2 # add repo helm repo add kubernetes-dashboard https://kubernetes.github.io/dashboard/ 为避
阅读全文 »

DML的使用 对表中的数据行进行增、删、改 增 向数据表内插入数据 1 2 3 4 5 6 7 8 9 # INSERT语法 INSERT [INTO] table_name [(field_name_1, field_name_2...)] VALUES (value1, value2...),[(value1, value2...)...] # 常见示例 ## 插入 INSERT INTO ch_people_msg(`p_uic`, `p_nickname`, `p_gender`, `p_age`, `p_pnum`, `p_address`, `p_email`) VALU
阅读全文 »