随笔分类 - 数据库
摘要:ubuntu上安装mysql非常简单只需要几条命令就可以完成。 sudo apt-get install mysql-server 安装过程中会提示设置密码什么的,注意设置了不要忘了,安装完成之后可以使用如下命令来检查是否安装成功: sudo netstat -tap | grep mysql 通过
阅读全文
摘要:MySQL 8.0 正式版 8.0.11 已发布,官方表示 MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大量的改进和更快的性能! 注意:从 MySQL 5.7 升级到 MySQL 8.0 仅支持通过使用 in-place 方式进行升级,并且不支持从 MySQL 8.0 降级到 My
阅读全文
摘要:关于数据库索引的所有文章,都会告诉你不要对这种字段建索引。 但这些文章不会告诉你的一个事实是: 如果表里面这个字段的值分布极度不均匀的情况下,而且你需要查询分布较少的记录的话,索引就非常有用了 举个例子,假设表中有一千万条记录,某个状态为0的记录总数大概会有100条,那么你想查询状态为0的记录时,有
阅读全文
摘要:aspnet_regsql命令解释 说明该向导主要用于配置SQL Server数据库,如membership,profiles等信息,如果要配置SqlCacheDependency,则需要以命令行的方式执行。以PetShop 4.0为例,数据库名为MSPetShop4,则命令为: aspnet_re
阅读全文
摘要:SQL Server 存在三种 Join 策略:Hash Join,Merge Join,Nested Loop Join。 Hash Join:用来处理没有排过序/没有索引的数据,它在内存中把 Join 两边数据(的关联key)分别建立一个哈希表。例如有以下的查询语句,关联的两张表没有建立索引,执
阅读全文
摘要:select top 20 qs.creation_time, last_execution_time, total_physical_reads, total_logical_reads, total_logical_writes,DB_NAME(dbid) dbname, execution_count, --total_worker_time, last_worker_time, --...
阅读全文
该文被密码保护。
摘要:问题场景:使用Entity Framework 6.0 操作Mysql数据库,中文保存至数据库后全部变成问号。但是使用Mysql API却不会。 原因排查:首先想到的肯定是数据库编码问题,一次查询了表、字段的编码,发现都是UTF8,这就说明表及字段的编码没有问题。第二步,查看数据库的编码: 结果:
阅读全文
摘要:一、概述 在数据库应用中,我们经常需要用到自动递增的唯一编号来标识记录。在MySQL中,可通过数据列的auto_increment属性来自动生成。可在建表时可用“auto_increment=n”选项来指定一个自增的初始值。可用“alter table table_name auto_increme
阅读全文
摘要:1、查看是否开启了binlog:show binary logs; 默认情况下是不开启的。 2、开启binlog:修改mysql的配置文件my.ini。添加如下配置: 该文件默认不允许修改,需要右键“管理员取得所有权”之后才能保存修改。 另外,需要注意的是图中的my.ini位于:C:\Program
阅读全文
摘要:1、查询数据(保证查询性能) 2、在查询的时候最好给表起个 别名,方便找到表中要查询的字段。执行sql的进行多条件查询的时候,使用类如Navicat 之类的工具,按照下面这种格式写查询sql: 这种方式可以写很多查询的条件,需要使用那个按照需要打开那个,不需要的就可以注释起来。多条件查询更加快捷。
阅读全文
摘要:假设一个网站(discuz)从最开始访问量很小做到日pv千万,我们来推测一下它的mysql服务器架构演变过程。 第一阶段 网站访问量日pv量级在1w以下。单台机器跑web和db,不需要做架构层调优(比如,不需要增加memcached缓存)。此时,数据往往都是每日冷备份的,但有时候如果考虑数据安全性,
阅读全文
摘要:MySQL 主从(MySQL Replication),主要用于 MySQL 的实时备份、高可用HA、读写分离。在配置主从复制之前需要先准备 2 台 MySQL 服务器。 一、MySQL主从原理 1. 每个从仅可以设置一个主。2. 主在执行 SQL 之后,记录二进制 LOG 文件(bin-log)。
阅读全文
摘要:1、在from子句中包含多个表名时,必须选择记录条数最少的表作为基础表;若有三个以上的表连接查询,那就需要选择交叉表作为基础表,交叉表指被其他表引用的表。2、使用exists代替in、使用not exists 代替not in。 高效:SELECT * FROM EMP (基础表) WHERE EM
阅读全文
摘要:1、显示服务器状态:db.serverStatus() 2、mongodb可以通过profile来监控数据,进行优化。 查看当前是否开启profile功能:db.getProfilingLevel() 返回level等级,值为0|1|2,分别代表意思:0代表关闭,1代表记录慢命令,2代表全部 开启p
阅读全文
摘要:Mongodb的mongostat命令可实时(1秒钟刷新一次)显示Mongodb数据库的运行情况,可视为性能监视器。 1、启动命令:authenticationDatabase表示用户认证证书所在的数据库,如下列语句表示用户认证证书在admin数据库。 3、监视器各个参数详解: inserts:每秒
阅读全文
摘要:以下命令中的启动与暂停服务命令需要使用管理员身份运行cmd.exe,其他命令需要先cd到Mongodb安装目录的bin目录。 1、启动服务:net start [Mongodb服务名]。示例: 结果: 2、停止服务:net stop [Mongodb服务名]。示例: 结果: 3、登陆:db.auth
阅读全文