mysql
raytol
想得多也要做的多,要想得到更多也得做的更多
展开
-
delete、drop 和 truncate 的区别
delete、drop 和 truncate 的区别delete指的是删除表中的一行或多行,并记录删除操作到事务记录中以便进行回滚操作。truncate则是一次性将表中的所有数据都删除,该操作不会记录到事务操作记录中,故删除后数据不能回滚。dropdrop 则是将整张表的数据都删除掉(结构和数据)delete、drop 和 truncate 操作对表和索引空间的影响当表...原创 2019-12-30 10:39:07 · 188 阅读 · 0 评论 -
腾讯云RDS(Mysql)与ECS自己搭建的数据库做主从
场景:云 RDS Mysql 作为主服务器ECS 服务器 mysql 作为从服务器步骤:一、登录腾讯云 Mysql 的 phpmyadmin 管理页面,创建从服务器同步数据的账户create user '账号名'@'操作数据库(用%,代表所有的数据库)' identified by '密码'; grant REPLICATION SLAVE,Replication client...原创 2019-11-04 15:07:45 · 1917 阅读 · 0 评论 -
MySQL单表数据量过千万,采坑优化记录,完美解决方案
问题概述使用阿里云rds for MySQL数据库(就是MySQL5.6版本),有个用户上网记录表6个月的数据量近2000万,保留最近一年的数据量达到4000万,查询速度极慢,日常卡死。严重影响业务。问题前提:老系统,当时设计系统的人大概是大学没毕业,表设计和sql语句写的不仅仅是垃圾,简直无法直视。原开发人员都已离职,到我来维护,这就是传说中的维护不了就跑路,然后我就是掉坑的那个!!!我尝...转载 2019-09-25 18:07:49 · 399 阅读 · 0 评论 -
定时备份数据库脚本
编写脚本 /usr/local/backup/db_bk.sh#!/bin/bash/usr/local/mysql/bin/mysqldump -u root -ppassword qm_weixin | gzip > /usr/local/backup/sql/qm_weixin_$(date +%Y%m%d_%H%M%S).sql修改文件权限chmod u+x db_...原创 2019-09-25 14:52:25 · 199 阅读 · 0 评论 -
mysql explain执行计划详解
1)、id列数字越大越先执行,如果说数字一样大,那么就从上往下依次执行,id列为null的就表是这是一个结果集,不需要使用它来进行查询。2)、select_type列常见的有:A:simple:表示不需要union操作或者不包含子查询的简单select查询。有连接查询时,外层的查询为simple,且只有一个B:primary:一个需要union操作或者含有子查询的select,位于最外层的...转载 2019-08-28 18:39:58 · 449 阅读 · 0 评论 -
关于MySQL orderBy 的优化
假设t1表存在索引key1(key_part1,key_part2),key2(key2)可以利用索引避免排序的SQLSELECT * FROM t1 ORDER BY key_part1,key_part2;SELECT * FROM t1 WHERE key_part1 = constant ORDER BY key_part2;SELECT * FROM t1 WHERE key_p...原创 2019-08-28 17:52:03 · 169 阅读 · 0 评论 -
linux 中如何安装 phpmyadmin
1、去到官网下载对应的版本 https://www.phpmyadmin.net/downloads/右键复制链接2、在 linux 中输入wget https://files.phpmyadmin.net/phpMyAdmin/4.9.0.1/phpMyAdmin-4.9.0.1-all-languages.zip3、解压unzip phpMyAdmin-4.9.0.1-all-...原创 2019-08-14 15:39:30 · 463 阅读 · 0 评论 -
关于MySQL索引
给字段加索引随着数据表数量的增加,没错查询的速度逐渐变慢,这是就需要给数据表需要 where 的字段加上索引。分析索引过多带来的问题可是随着索引的字段越来越多,查表的速度也变得越来越慢,这时候就要使用 mysql 的 explain 来查看具体使用的索引是哪个##### 使用联合索引由于单个索引过多,使我们能通过索引从数据表中筛选出的数据越少,这时候就需要使用联合索引,根据 mysql ...原创 2019-03-15 20:55:27 · 132 阅读 · 0 评论 -
一、MySQL执行流程
概论:MySQL 可以分为 Server 层和存储引擎层两部分select * from user where id = 2;当执行以上一条 SQL 语句时,会产生以下几个步骤首先客户端会与 MySQL 的 Server 层的连接器建立连接,此时会校验权限,在连接器中也可以管理连接当连接完后,回来的 查询缓存 中查询数据是否存在,如果存在直接返回数据结果。当在 查询缓存 中没有命中数...原创 2018-12-29 23:52:13 · 197 阅读 · 0 评论 -
关于 phpmyadmin
问题升级了 phpmyadmin 后,提示变量 $cfg['TempDir'] (./tmp/)无法访问。phpMyAdmin无法缓存模板文件,所以会运行缓慢解决进入 phpMyAdmin 目录mkdir tmpchmod 750 tmp...原创 2018-12-19 18:22:57 · 393 阅读 · 0 评论 -
laravel 解决批量插入数据出现 Integrity constraint violation: 1062 Duplicate entry '213' for key
使用 insert ignore 解决主键或唯一的字段重复,当将要插入的数据已存在时则跳过不插入$res = DB::insert('insert ignore into qm_card_codes (created_at, updated_at) values(?, ?, ?, ?)',[x, x]);...原创 2018-12-07 18:25:17 · 14251 阅读 · 0 评论 -
mysql5.7 升至 8.0 出现的问题
身份验证由于 MySQL 8.0.11默认使用的是caching_sha2_password身份验证方法所以 之前在5.7创建的用户导致登录不了解决方案方法一、修改默认加密方式mysql_native_password[mysqld]default_authentication_plugin=mysql_native_password方法二、修改登陆不上账号的加密方式AL...原创 2018-11-21 00:10:25 · 3900 阅读 · 0 评论 -
创建mysql登录用户及赋予权限
首先,先创建一个用户 create user zhangsan identified by 'lisi';创建完后赋予相关权限GRANT BACKUP_ADMIN,BINLOG_ADMIN,CONNECTION_ADMIN,ENCRYPTION_KEY_ADMIN,GROUP_REPLICATION_ADMIN,PERSIST_RO_VARIABLES_ADMIN,REPLICATION_...原创 2018-11-21 00:02:13 · 615 阅读 · 0 评论 -
mysql基础概念知识及应用
mysql 中有两种索引类型 MyISAM 和 InnoDBMyISAM 支持全文搜索,不支持事务处理,不支持行锁,应用于需要大量select 操作InnoDB 支持事务处理和行锁,应用于需要大量对数据表进行操作的场景对筛选数据进行去重select distinct name,id from user...原创 2018-11-11 21:17:22 · 117 阅读 · 0 评论