有一个表有十万条数据,SELECT COUNT(*) FROM t_tablename; 时间长达10秒以上。 解决办法,把 Primary Key 加上 Unique 约束了,速度变成30毫秒了,解决了。 不太清楚原因,先记着。 参考:https://blog.csdn.net/landstream/article/details/79673176
野猪佩奇 2019-05-17 MySQL 1262
INSERT INTO tp_article( name, user_id, category_id, thumbnail, content, description, create_time, tags ) SELECT title, FLOOR(2 + (RAND() * 10)), category, thumbnail, content, description, UNIX_TIMESTAMP(create_time) + ce
野猪佩奇 2018-10-26 MySQL 1218
1、导出所有库系统命令行mysqldump -uusername -ppassword --all-databases all.sql 2、导入所有库mysql 命令行mysql source all.sql; 3、导出某些库系统命令行mysqldump -uusername -ppassword --databases db1 db2 db1db2.sql 4、导入某些库mysql命令行mysql source db1db2.sql; 5、导入某个库系统命令行mysql -uusername -ppassword db1 db1.sql; 或mysql命令行mysql
野猪佩奇 2018-10-09 MySQL 836
索引的选择性是指索引列中不同值的数目和表的记录数的比值。假如表里面有1000条数据,表索引列有980个不同的值,这时候索引的选择性就是980/1000=0.98 。索引的选择性越接近1,这个索引的效率很高。 e.g. 性别可以认为是3种,男,女,其他。如果创建索引,查询语句 性别=‘男'的数据,索引的选择性就是3/1000=0.003。索引的选择性值很低,对查询提升不大,所以性别建索引意义不大
野猪佩奇 2018-09-24 MySQL 993
创建表 CREATE TABLE `kfinfo` (     `Name` varchar(100) DEFAULT NULL,     `CardNo` varchar(50) DEFAULT NULL,     `Descriot` varchar(150) DEFAULT NULL,     `CtfTp` varchar(50) DEFAULT NULL,     `CtfId` varchar(50) DEFAULT NULL,     `Gender` varchar(50) DEFAULT NULL,     `Birthday` varchar(50) DE
野猪佩奇 2018-09-24 MySQL 982
MYSQL导入数据出现The MySQL server is running with the --secure-file-priv option so it cannot execute this statement 查看 secure-file-priv 当前的值是什么 show variables like '%secure%'; 那么我们就需要改配置文件my.ini secure-file-priv='' 重启MySQL
野猪佩奇 2018-09-24 MySQL 957
用单数形式更佳,理由如下: 1、概念直观。 你有一个袋子,里面有好多个苹果,你会说这是个苹果袋。但无论里面有0,1,百万个苹果,它依然是个袋子。表也是如此,表明需要描述清楚,表里面包含的对象,而非有多少个数据。 2、便利性 单数形式更简单。有一些单词,它的复数形式可能是非常规的,或者就没有复数形式,但是单数不一样,单数形式则没那么多讲究。有些单词的复数,可能会想到你头大,可能得好好google才出来 3、优雅 特别是一些master-detail形式的资源名称,统一用单数,读起来更方便,对齐更整齐,从顺序上更有逻辑性。 对比下 单数: Order OrderDeta
野猪佩奇 2018-09-15 MySQL 1067
PM2 简介 pm2 是一个带有负载均衡功能的Node应用的进程管理器。 当你要把你的独立代码利用全部的服务器上的所有CPU,并保证进程永远都活着,0秒的重载, PM2是完美的。 命令详解: 安装 npm install -g pm2 用法 $ npm install pm2 -g # 命令行安装 pm2 $ pm2 start app.js -i 4 #后台运行pm2,启动4个app.js # 也可以把'max' 参数传递给 start # 正确的进程数目依赖于Cpu的核心数目 $ pm2 start app.js --name my-api # 命名进程 $
野猪佩奇 2018-04-06 WordPress MySQL Node.js 2602
在MySQL数据库中,mysql-bin.000001、mysql- bin.000002等文件是数据库的操作日志,例如UPDATE一个表,或者DELETE一些数据,即使该语句没有匹配的数据,这个命令也会存储到日志文件中,还包括每个语句执行的时间,也会记录进去的。这样做主要有以下两个目的:1:数据恢复如果你的数据库出问题了,而你之前有过备份,那么可以看日志文件,找出是哪个命令导致你的数据库出问题了,想办法挽回损失。2:主从服务器之间同步数据主服务器上所有的操作都在记录日志中,从服务器可以根据该日志来进行,以确保两个同步。处理方法分两种情况:1:只有一个mysql服务器,那么可以简单的注释掉这个
野猪佩奇 2017-11-14 MySQL 880
执行命令:service mysql status 提示:ERROR! MySQL is running but PID file could not be found 搜索了一下,有人说可能是硬盘满了,清理下垃圾文件。 这才恍然明白,刚刚用vi查看日志文件提示那个错误的原因。 在根目录/下执行命令:df -h 输出如下: [root@localhost /]# df -h Filesystem Size Used Avail Use% Mounted on **/dev/mapper/VolGr
野猪佩奇 2017-07-05 MySQL 1618
1. 关掉mysql服务,打开系统设置最后的mysql,然后将mysql先关掉2. 生成一个文件命名mysql-init,文件中放入:一句话,这句话不同版本不一样,如下:(括号里面不包含)alter user ‘root’@‘localhost’ identified by ‘新密码’;(MySQL 5.7.6 and later)set password for ‘root’@‘localhost’=password(‘新密码’);(MySQL 5.7.5 and earlier)3. cd /usr/local/mysql/bin/sudo sumysqld_safe —init-file
野猪佩奇 2017-04-04 MySQL 1003
1.删除所有的目录,只保留datasharebin2.删除BIN下面除以下三个文件之外的所有文件:libmysql.dll(MYSQL5中的文件,在MYSQL5.5中不存在)mysqladmin.exemysqld.exe3.如果要用客户端,请保留mysql.exe4.删除Share目录下除以下目录外的所有目录charsetsenglish5.删除Data目录下的除mysql之外的所有文件和目录1.准备工作下载mysql的最新免安装版本mysql-noinstall-5.1.53-win32.zip,解压缩到相关目录,如:d:\ mysql-noinstall-5.1.53-win32
野猪佩奇 2017-02-06 MySQL 953
SELECT user_id, group_id, COUNT(status) - SUM(status) AS contract FROM tp_contract GROUP BY user_id HAVING group_id = 18 AND COUNT(status) - SUM(status) 0 LIMIT 0,10select name as name1 from table1 where name1='aaa';上面的运行有问题, 字段别名不能直接在谓词部分引用,表别名可以。有人解释为MySql中列的别名本来是返
野猪佩奇 2016-09-26 MySQL 964
使用workbench,如果你要批量更新或删除数据,一般会报“Error Code: 1175 You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column”错误,这是Workbench的安全设置导致的,通过设置就可以处理。快速设置,直接在workbench里面的查询窗口输入“SET SQL_SAFE_UPDATES = 0;”就可以了。如果你想要图形界面设置,请继续。在workbench的菜单栏点击“edit-- Preferences”,然后会弹出对
野猪佩奇 2016-09-26 MySQL 935
Oren Eini(又名Ayende Rahien)建议开发者尽量避免数据库的软删除操作,读者可能因此认为硬删除是合理的选择。作为对Ayende文章的回应,Udi Dahan强烈建议完全避免数据删除。所谓软删除主张在表中增加一个IsDeleted列以保持数据完整。如果某一行设置了IsDeleted标志列,那么这一行就被认为是已删除的。Ayende觉得这种方法“简单、容易理解、容易实现、容易沟通”,但“往往是错的”。问题在于: 删除一行或一个实体几乎总不是简单的事件。它不仅影响模型中的数据,还会影响模型的外观。所以我们才要有外键去确保不会出现“订单行”没有对应的父“订单”的
野猪佩奇 2016-09-26 MySQL 940
这是因为删除操作后在数据文件中留下碎片所致。DELETE只是将数据标识位删除,并没有整理数据文件,当插入新数据后,会再次使用这些被置为删除标识的记录空间。另外实际操作过程中还发现这个问题还存在两种情况。(1)当DELETE后面跟条件的时候,则就会出现这个问题。如:delete from table_name where 条件删除数据后,数据表占用的空间大小不会变。(2)不跟条件直接delete的时候。如:delete from table_name清除了数据,同时数据表的空间也会变为0。这就存在了一个问题,在网站的实际运行过程中。经常会存在这样的附带条件删除数据的操作行为。天长日久,这不就在数
野猪佩奇 2016-09-19 MySQL 834
定义和用法DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据。语法DATE_FORMAT(date,format)date 参数是合法的日期。format 规定日期/时间的输出格式。可以使用的格式有:格式 描述%a缩写星期名 %b缩写月名 %c月,数值 %D带有英文前缀的月中的天 %d月的天,数值(00-31) %e月的天,数值(0-31) %f微秒 %H小时 (00-23) %h小时 (01-12) %I小时 (01-12) %i分钟,数值(00-59) %j年的天 (001-366) %k小时 (0-23) %l小时 (1-12) %M月名 %
野猪佩奇 2016-08-21 MySQL 840
date为需要处理的参数(该参数是Unix 时间戳),可以是字段名,也可以直接是Unix 时间戳字符串 后面的 '%Y%m%d' 主要是将返回值格式化 例如: mysql SELECT FROM_UNIXTIME( 1249488000, '%Y%m%d' ) - 20071120 mysql SELECT FROM_UNIXTIME( 1249488000, '%Y年%m月%d' ) - 2007年11月20 UNIX_TIMESTAMP()是与之相对正好相反的时间函数 UNIX_TIMESTAMP(), UNIX_TIMESTA
野猪佩奇 2016-08-21 MySQL 1033
合并两个数据表,而被合并的表的列必须完全相同,也就是:列的数量一致,列的名字一致,列的顺序一致,列的类型一致。 两者的区别: union合并表之后,重复的行数据会被化作一条数据,而后者union all将所有数据行都显示,重复的时候依然保持重复。 union使用方法: SELECT column_name(s) FROM table_name1 UNION SELECT column_name(s) FROM table_name2 union all使用方法: SELECT column_name(s) FROM table_name
野猪佩奇 2016-08-21 MySQL 893
在安装一个php程序,执行mysql数据库sql文件时,一直报错,出现“1366 - Incorrect integer value: '' for column 'ID' at row 1 ”。出现错误的原因是没有给自增ID赋值,尽管之前的版本可以不赋值,自动增加,但是在新版本的msyql(mysql 5.X以上版本)中需要为其赋值NULL。下面这个sql插入就会出现“1366 - Incorrect integer value: '' for column 'ID' at row 1”INSERT INTO `test` (
野猪佩奇 2016-08-07 MySQL 892
随机推荐
uni-app 实现暗黑模式/夜间模式/深色模式/暗黑主题(DarkMode)的几种方法
Content Security Policy(CSP)简介
冒泡法排序
浏览器的同源和跨域
JavaScript location对象
JavaScript 事件流
WordPress 获取当前主题文件夹的路径
Linux 中 top 命令的 Load Average 含义