mysql
番石榴-452124076
这个作者很懒,什么都没留下…
展开
-
inner join 与 left join 之间的区别
关于inner join 与 left join 之间的区别,以前以为自己搞懂了,今天从前端取参数的时候发现不是预想中的结果,才知道问题出在inner join 上了。需求是从数据库查数据,在前端以柱形图的形式展现出来,查到的数据按行业分组,显示每个行业的户数及户数占比,涉及到的字段有A表的用户数、总用户数和B表的行业名称。本来是不管查不查的到数据,在X轴都应该显示行业名称的,结果是X、Y轴都...转载 2018-06-04 14:39:03 · 118 阅读 · 0 评论 -
mysql binlog开启及查看
mysqlbinlog.exe处理二进制日志文件!想看增量备份的dml日志文件,却看不懂,这个文件可以帮你查看,不弄多说,你懂的。提示:有的人说用了这个文件也看不了!那是你无能,见下面方法:1、把mysqlbinlog.exe放到mysql的bin目录;2、打开cmd,进入到bin目录;3、输入类似这样的命令:D:\MySQL\bin>mysqlbinlog D:\mysql_...转载 2018-07-16 17:20:47 · 2696 阅读 · 0 评论 -
mysql 优化技巧心得一(key_buffer_size设置)
在调优MySQL服务器时,要配置的两个最重要的变量是key_buffer_size和 table_open_cache。在尝试更改任何其他变量之前,您应首先确信您已正确设置这些设置。1: 对于mysql来说,登录的时候,加一个参数#mysql -u root -p --prompt="\\u@\\d \\r:\\m:\\s>"--prompt 是加一些登录后的参数,上面参数 u 是加入登录的...转载 2018-07-11 20:14:42 · 1640 阅读 · 0 评论 -
MySQL数据库管理
http://www.oracleoaec.net/zt/mysql_ocp/?SHPC-X3D-1605230705 既然不知从哪里开始 就按培训给出的课程安排,开始自学章节一:MySQL介绍和安装 1)MySQL课程总体介绍 2)MySQL对Oracle的意义 3) MySQL全球的应用 4)MySQL的社区支持 5)来自Oracle的重要支持 6)My...原创 2018-07-18 10:37:17 · 136 阅读 · 0 评论 -
MySQL架构
https://www.cnblogs.com/zcbing/p/6397507.htmlhttps://blog.csdn.net/fuzhongmin05/article/details/709041901.MySQL整体逻辑架构我们先下图看看MySQL整体逻辑架构(MySQL’s Logical Architecture) 图1 ...转载 2018-07-18 11:07:26 · 139 阅读 · 0 评论 -
MYSQL 常用命令
查看Mysql服务器上的版本select version(); 当前版本mysql默认的存储引擎:show variables like '%storage_engine%';设置 mysql 全局变量STE GLOBAL event_scheduler = 'on'; 查看mysql 全局变量select @@event_scheduler;MySQL使...原创 2018-07-18 11:37:58 · 193 阅读 · 0 评论 -
MySQL 客户端软件比较
https://www.oschina.net/question/12_617?sort=time这两个 MySQL 客户端软件分别是 : HeidiSQL 和 Navicat LiteHeidiSQL 的界面如下: Navicat Lite 的主界面如下:首先,在功能上二者各有千秋,Navicat Lite 提供了各种数据库对象的管理,包括:表、存储过程、视图、触发器、作业等;而...转载 2018-07-18 14:46:04 · 1317 阅读 · 0 评论 -
MySQL连接服务端的几种方式
提示:win下试用命令行,如果没有配置全局变量,必须cd 到mysql 安装环境的bin 目录,此时在cmd里输入mysql 才能正常使用。如果要使用mysql 的其它功能也是如此,否则会提示 一、MySQL 连接本地数据库,用户名为“root”,密码“root”:C:\phpStudy\PHPTutorial\MySQL\bin>mysql -h localhos...原创 2018-07-18 15:21:00 · 1389 阅读 · 1 评论 -
MyISAM与InnoDB的区别
https://blog.csdn.net/chajinglong/article/details/56666771从以下几个方面:1、存储结构 每个MyISAM在磁盘上存储成三个文件。第一个文件的名字以表的名字开始,扩展名指出文件类型。 .frm文件存储表定义。 数据文件的扩展名为.MYD (MYData)。 索引文件的扩展名是.MYI (MYIndex)。2、存储空间 M...转载 2018-07-18 18:08:40 · 171 阅读 · 0 评论 -
mysql日志详细解析
https://www.cnblogs.com/wangkongming/p/3684950.html https://www.cnblogs.com/f-ck-need-u/p/9001061.html转载 2018-07-19 14:31:50 · 187 阅读 · 0 评论 -
mysql having和where的区别
having子句与where子句一样,都是用于条件判断的。 区别1where是判断数据从磁盘读入内存的时候having是判断分组统计之前的所有条件区别原理区别2having子句中可以使用字段别名,而where不能使用 区别3having能够使用统计函数,但是where不能使用先分组,再判断...转载 2018-07-14 10:19:05 · 151 阅读 · 0 评论 -
MySQL强制性操作
1、强制索引FORCE INDEX1SELECT * FROM TABLE1 FORCE INDEX (FIELD1) … 只使用建立在FIELD1上的索引,而不使用其它字段上的索引。 2、忽略索引 IGNORE INDEX1SELECT * FROM TABLE1 IGNORE INDEX (FIELD1, FIELD2) … TABLE1表中FIELD1和FIELD2上的索引不被使用。 3...转载 2018-07-14 10:24:09 · 1965 阅读 · 0 评论 -
优化临时表使用,SQL语句性能提升100倍
【问题现象】线上mysql数据库爆出一个慢查询,DBA观察发现,查询时服务器IO飙升,IO占用率达到100%, 执行时间长达7s左右。SQL语句如下:SELECT DISTINCT g.*, cp.name AS cp_name, c.name AS category_name, t.name AS type_name FROMgm_game g LEFT JOIN gm_cp cp ON cp....转载 2018-07-14 10:42:37 · 430 阅读 · 0 评论 -
MySQL常见错误码及说明
1005:创建表失败1006:创建数据库失败1007:数据库已存在,创建数据库失败<=================可以忽略1008:数据库不存在,删除数据库失败<=================可以忽略1009:不能删除数据库文件导致删除数据库失败1010:不能删除数据目录导致删除数据库失败1011:删除数据库文件失败1012:不能读取系统表中的记录1020:记录已被其他用户修改...转载 2018-07-16 15:22:42 · 165 阅读 · 0 评论 -
索引对性能到底有多少的影响?
http://feilong.tech/?p=274索引到底对性能有多少影响?这个问题估计是很多MySQL小白好奇的问题。当然我也是一样。因为之前的时候,并没有对索引有太多的注意,而且之前的工作经历,因为数据量很小,索引所起到的作用并不是很大,所以也没有太大注意。事情的起点我在公司是做后端开发(PHPer),除了日常的开发工作,也要兼职公司的运维。每周安排一个人跟进报警邮件,出现问题及时通报。像很...转载 2018-07-16 11:47:57 · 3863 阅读 · 0 评论 -
mysql in语句优化
mysql会对sql语句做优化, in 后面的条件不超过一定数量仍然会使用索引。mysql 会根据索引长度和in后面条件数量判断是否使用索引。另外,如果是in后面是子查询,则不会使用索引。一个文章库,里面有两个表:category和article。category里面有10条分类数据。article里面有 20万条。article里面有一个"article_category"字段是与categor...转载 2018-06-04 14:40:00 · 5120 阅读 · 0 评论 -
MySQL学习笔记
/* 启动MySQL */net start mysql/* 连接与断开服务器 */mysql -h 地址 -P 端口 -u 用户名 -p 密码/* 跳过权限验证登录MySQL */mysqld --skip-grant-tables-- 修改root密码密码加密函数password()update mysql.user set password=password('root');SHOW PRO...转载 2018-06-05 09:17:40 · 104 阅读 · 0 评论 -
20个数据库设计的最佳实践
数据库设计是整个程序的重点之一,为了支持相关程序运行,最佳的数据库设计往往不可能一蹴而就,只能反复探寻并逐步求精,这是一个复杂的过程,也是规划和结构化数据库中的数据对象以及这些数据对象之间关系的过程。下面给出了20个数据库设计最佳实践,当然,所谓最佳,还是要看它是否适合你的程序。一起来了解了解吧。 使用明确、统一的标明和列名,例如 School, SchoolCourse, CourceID。数...转载 2018-06-05 20:50:29 · 219 阅读 · 0 评论 -
MySQL中AES_ENCRYPT('密码','钥匙')函数 可以对字段值做加密处理
MySQL中AES_ENCRYPT('密码','钥匙')函数 可以对字段值做加密处理 AES_DECRYPT(表的字段名字,'钥匙')函数 解密处理例,表结构:现在插入一条数据,对passwd密码字段加密。12INSERT INTO credit_card(cid,NAME,email,passwd) VALUES(101,'hechunyang','[email protected]...转载 2018-06-06 10:36:05 · 2438 阅读 · 0 评论 -
mysql使用kill命令解决死锁问题 杀死某条正在执行的sql语句
在使用mysql运行某些语句时,会因数据量太大而导致死锁,没有反映。这个时候,就需要kill掉某个正在消耗资源的query语句即可, KILL命令的语法格式如下:KILL [CONNECTION | QUERY] thread_id每个与mysqld的连接都在一个独立的线程里运行,您可以使用SHOW PROCESSLIST语句查看哪些线程正在运行,并使用KILL thread_id语句终止一个线程...转载 2018-06-14 11:16:36 · 6513 阅读 · 0 评论 -
MySQL批量插入大量数据方法
在MySQL数据库中,如果要插入上百万级的记录,用普通的insert into来操作非常不现实,速度慢人力成本高,推荐使用Load Data或存储过程来导入数据,我总结了一些方法分享如下,主要基于MyISAM和InnoDB引擎。1 InnoDB存储引擎首先创建数据表(可选),如果有了略过:> CREATE DATABASE ecommerce;> USE ecommerce;>...转载 2018-05-31 16:47:06 · 65033 阅读 · 0 评论 -
用mysqli连接数据库
<?php/* Connect to a MySQL server 连接数据库服务器 */$link = mysqli_connect( 'localhost', /* The host to connect to 连接MySQL地址 */ 'jian', /* The user to connect as 连接MySQL用户名 */ '12345...转载 2018-06-16 09:02:12 · 248 阅读 · 0 评论 -
MySQL 休眠sleep进程,设置定时杀死
公司有一台Linux服务器专门用来跑公司的WEB服务,由于历史原因,站点数与页面非常多,导致经常出现大量的sleep进程;MySQL服务器所支持的最大连接数是有上限的,因为每个连接的建立都会消耗内存,因此我们希望客户端在连接到MySQL Server处理完相应的操作后,应该断开连接并释放占用的内存。如果你的MySQL Server有大量的闲置连接,他们不仅会白白消耗内存,而且如果连接一直在累加而不...转载 2018-06-16 09:04:17 · 6434 阅读 · 0 评论 -
mysql查询正在执行的进程
查看mysql进程有两种方法1.进入mysql/bin目录下输入mysqladmin processlist;2.启动mysql,输入show processlist;如果有SUPER权限,则可以看到全部的线程,否则,只能看到自己发起的线程(这是指,当前对应的MySQL帐户运行的线程)。mysql> show processlist;+-------+-----------+--------...转载 2018-06-16 09:04:43 · 597 阅读 · 0 评论 -
MySQL配置文件my.cnf参数优化和中文详解
[client]port = 3306socket = /tmp/mysql.sock[mysqld]port = 3306socket = /tmp/mysql.sockbasedir = /usr/local/mysqldatadir = /data/mysqlpid-file = /data/mysql/mysql.piduser = mysqlbind-address ...转载 2018-06-16 09:06:48 · 110 阅读 · 0 评论 -
MySQL 5.6 my.cnf配置优化
[client] port = 3306 socket = /var/lib/mysql/mysql.sock [mysql] #这个配置段设置启动MySQL服务的条件;在这种情况下,no-auto-rehash确保这个服务启动得比较快。 no-auto-rehash [mysqld] user = mysql port = 3306 s...转载 2018-06-16 09:07:38 · 449 阅读 · 0 评论 -
mysql中的唯一键索引,插入重复数据直接报错的解决办法
MYSQL 有 insert ignore into 这个关键字他这样,当违背了唯一约束的时候~就会直接跳过,不会报错。如果没有添加关键字,在批量操作时会导致程序终止INSERT IGNORE INTO `sk_prolong_member` (`user_id`, `cate_id`, `sum`)VALUES ('110106', '100', '15')...转载 2018-06-30 09:20:50 · 3357 阅读 · 0 评论 -
分组取前N记录
经常看到问题,如何取出每组的前N条记录。方便大家参考于是便把常见的几种解法列出于下。问题:有表 如下,要求取出各班前两名(允许并列第二)Table1+----+------+------+-----+| id |SName |ClsNo |Score|+----+------+------+-----+| 1 |AAAA | C1 | 67 || 2 |BBBB | C1 | 55 ...转载 2018-06-20 09:45:49 · 79 阅读 · 0 评论 -
单条SQL语句记录
测试数据库查询语句书写顺序:select – from- where- group by- having- order by-limit查询语句执行顺序:from - where -group by - having - select - order by-limitCREATE TABLE `test_car` ( `id` int(10) NOT NULL AUTO_IN...原创 2018-07-16 10:40:37 · 1085 阅读 · 0 评论 -
MySQL 更新字符串(在现有的字符串前或后面添加字符串)
我想让表中的用户编号前加上字符串user-,期初我是这样写的update t_wh_user_all set user_code='user-'+user_code where 1=1;用 + . 连接符往往是不对的,运行会报错误正确的sql应该写成这个update t_wh_user_all set user_code=CONCAT('user-',user_code)...转载 2019-07-18 14:10:04 · 437 阅读 · 0 评论