随笔分类 - 数据库
摘要:DROP PROCEDURE IF EXISTS sp_name; create procedure sp_name() BEGIN DECLARE suozaizhuji VARCHAR(32); DECLARE base_ip VARCHAR(32); DECLARE s int DEFAULT
阅读全文
摘要:在sql server中,死锁都与一种锁有关,那就是排它锁(x锁)。由于在同一时间对同一个数据库资源只能有一个数据库进程可以拥有排它锁。因此,一旦多个进程都需要获取某个或者同一个数据库资源的排它访问权,而又被对方所阻止的时候,死锁就会出现。 第一种就是最经典的race condition思路,两个数
阅读全文
摘要:参考文章:https://blog.csdn.net/HiBoyljw/article/details/85123099 为rabbitmq添加远程访问用户
阅读全文
摘要:1.添加6个用户,每个用户的密码同用户名,不显示添加密码的信息,并给显示添加用户成功信息。 ①用户直接在脚本里写死 test1.sh ②用户当参数传递 test2.sh ③执行 调试脚本执行: sh -x /opt/shell/test2.sh 2.写一个脚本,完成以下任务:第一,使用一个变量保存一
阅读全文
摘要:1.事物的保存点 MYSQL可以让我们对事务进行部分回滚,就是在事务里调用SAVEPOINT语句来设置一些命名标记。如果想要回滚到那个标记点位置,需要使用ROLLBACK语句来指定哪个保存点。 2.SQL Server 排序函数 ROW_NUMBER: 根据组显示每一条记录在该组中出现的位置,例如:
阅读全文
摘要:前几天统计一个sql,是一个人提交了多少工单,顺便做了相关sql优化。数据大概2000多w。 为了实验最少受其他因素干扰,将生产库的200多w数据导出来,用测试服务器进行测试。 导出来的数据是一个堆表,没有主键,没有索引。 1.堆表的情况 这时候就在这时候,用执行计划分析下语句。 select_ty
阅读全文
摘要:我已经讨论了各种确定恢复状态的方法,但是本周我参与了一个围绕回滚的有趣讨论。交易已经运行了14个小时,然后发出了KILL SPID。SPID进入回滚,并发生2天和4小时。 自然的问题是为什么不14小时回滚? 没有一些具体的细节很难说,但如果原来的查询使用了并行工作,那么可能会完成超过14个小时的工作
阅读全文
摘要:今天在测试服务器做调试的时候,遇到Mysql的启动问题,好像是PID文件找不到了。 不科学啊,前几天还好好的呀,我也没怎么乱搞啊,然后一通百度,找到了几个解决办法。 1.有可能是已经存在mysql进程,多执行killall mysql,直到显示 no process killed. 2.有可能是my
阅读全文
摘要:这一段时间,因为系统升级,新系统产生的数据长度,比原来的数据长度要长,所以说要扩充一下字段长度。 在执行的时候,有这样一个情况。 例如Student表的Name字段长度是nvarchar(50), 假如想变成nvarchar(100),这种情况,立刻能执行成功。 假如想变成nvarchar(20),
阅读全文
摘要:SQLServer 代理发邮件需要开启SQL Server 代理服务器,然后,在【管理】-【数据库邮件】中,右键点击配置数据库邮件。 我用的是腾讯的企业邮箱,个人的163邮箱略微不同。下图是相关邮件的配置 这是配置文件的配置。 配置完成之后,就把下边语句写成存储过程,之后,再配置定时任务,定时执行该
阅读全文
摘要:1.sql存储过程中使用 output 2.Sql Server 增加字段、修改字段、修改类型、修改默认值 ①修改字段名: alter table 表名 rename column A to B ②修改字段类型: alter table 表名 alter column 字段名 type not nu
阅读全文
摘要:在我们操作数据库的时候,尤其是执行,update,delete操作的时候,都存在着误操作的风险,今天发现一种方法,能避免这一问题,就是使用Mysql的alias 。 1.查看Mysql帮助 在mysql命令加上选项 -U后,执行update,delete语句时,若语句中不包含where或limit关
阅读全文
摘要:刚才有幸看了下 nvarchar(n)和varchar(n),感觉以前的认知有误。 nvarchar(n):n指的是字符个数,范围是1-4000,存储的是可变长度的Unicode字符数据。 按字符存储,1个中文或者英文字符都占2个字节。 varchar(n):n指的是字节个数(其实这个地方用【字符】
阅读全文
摘要:有时候,在Mysql数据库中会经常遇到乱码的问题,现在普遍的做法就是全部强行把编码格式都设置成utf8模式,就可以解决这个问题,以前是知其然,不知其所以然,今天我就稍微研究了下Mysql的字符集。 就拿我刚用二进制模式刚装的Mysql5.6来说,查看一下字符集是这样。 1.看到这里,对 charac
阅读全文
摘要:Mysql的权限 mysql中存在4个控制权限的表,分别为user表,db表,tables_priv表,columns_priv表。 mysql权限表的验证过程为: 先从user表中的Host,User,Password这3个字段中判断连接的ip、用户名、密码是否存在,存在则通过验证。 通过身份认证
阅读全文
摘要:一、mysqldump 1.备份test库 2.备份 -B参数 3.备份 --compact 去除那些多余的字符 4.mysql恢复 5.mysqldump的压缩 gzip 6.mysqldump的压缩恢复 gunzip 7.mysqldump只备份表结构 -d 8.mysqldump只备份表数据(
阅读全文
摘要:利用二进制还原数据库的时候,突然有点纠结,log_bin和sql_log_bin有什么区别呢?行吧,搜搜,结合自己的经验,简单说一下。log_bin:二进制日志。 在 mysql 启动时,通过命令行或配置文件决定是否开启 binlog,而 log_bin 这个变量仅仅是报告当前 binlog 系统的
阅读全文
摘要:Mysql多实例配置成功后,想让配置成开机自启。 首先看一下Linux启动的知识点,顺序如下。 1 加载内核2 执行init程序3 /etc/rc.d/rc.sysinit # 由init执行的第一个脚本4 /etc/rc.d/rc $RUNLEVEL # $RUNLEVEL为缺省的运行模式,lin
阅读全文
摘要:前两天做系统调优的时候,想着把一系列的表联合查询换成视图查询,这样速度就会快些,但是效果却不是很理想。下面我把相关实验过程记录下来。 原sql语句是一个表联合查询,WorkOrder表数据有2000多万条。下面代码是一个是联合查询,一个是将联合查询建成一个视图。 我执行了5次这段代码,5次结果如下。
阅读全文
摘要:最近呢,总是有人反馈公司的一个系统页面反应太慢,一个列表展示,竟然需要二三十秒,我上去点了点,发现没二三十秒那么夸张,但是也是够慢了,龟速,直接影响工作效率啊。所以从这星期开始,我便硬着头皮上优化系统了。 这个系统使用MVC3+Easy UI做的,数据库用的是SQL Server 2012。优化呢,
阅读全文