数据库服务器

SQL SERVER 数据库跨服务器备份

自古美人都是妖i 提交于 2019-11-28 13:37:49
原文:https://www.cnblogs.com/jaday/p/6088200.html 需求介绍:每天备份线上正式库并且把备份文件复制到测试服务器,测试服务器自动把数据库备份文件还原。 方案介绍: 第1步:在正式库上创建存储过程用来备份数据库和复制到测试服务器,然后新建作业每天定时执行创建的存储过程。 第2步:在测试服务器数据库上创建存储过程用来还原数据库,然后新建作业每天定时执行创建的存储过程。 准备: 在正式服务器上共享备份文件的文件夹,并且给文件夹everyone的权限。 在测试服务器上创建共享文件夹,并且给文件夹everyone的权限。 正式库备份数据库和复制数据库代码: --开启 xp_cmdshell sp_configure 'show advanced options',1 reconfigure go sp_configure 'xp_cmdshell',1 reconfigure go USE [master] GO /****** Object: StoredProcedure [dbo].[backup_db_ksedu] Script Date: 11/22/2016 08:41:23 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO --备份数据库 Create proc [dbo]

Redis缓存,持久化,高可用

与世无争的帅哥 提交于 2019-11-28 12:43:15
一,Redis作缓存服务器 ​ 本篇博客是接着 上一篇 博客未分享完的技术点。 ​ redis作为缓存服务器是众多企业中的选择之一,虽然该技术很成熟但也是存在一定的问题。就是缓存带来的缓存穿透,缓存击穿,缓存失效问题,继而引用分布式锁。 1.1,缓存穿透 ​ 在如今的项目中大多采用垂直的MVC架构,由service层去调用DAO层,然后DAO层再去查询数据库。而redis作为缓存服务器就是在service层去调用DAO层去查询时先去缓存服务器查询,如果存在则直接返回该数据,否则再去查询数据库。由此可知,这么做大量减少了对磁盘I/O的操作,减轻了数据库的压力。 ​ 现在我们假设一种情况,在数据库中存在有id为1到1000的数据。现在如果有人手动去模拟一个id为1001的请求,那么该数据在缓存服务器中是不存在的,因而便会去查询数据库。那么问题来了,如果是一个大量无效的请求去查询数据库。则势必会对数据库造成难以承受的压力,这种情况就是所谓的缓存穿透。 ​ 那如何解决呢? ​ 1,将查询到的null值直接保存到缓存服务器中,但是这种做法并不推荐,因为如果是大量不同的请求id同样会去查询数据库。 ​ 2,接口的限流,降级与熔断 ​ 在项目中对于重要的接口一定要做限流,对于以上恶意攻击的请求除了要限流,还要做好降级准备,并且进行熔断,这种做法可以有效控制大量无效请求。 ​ 3,布隆过滤器 ​

MySQL 是怎样运行的:从根儿上理解 MySQL:字符集和比较规则

故事扮演 提交于 2019-11-28 12:32:01
字符集和比较规则简介 一些重要的字符集 ASCII 字符集 共收录128个字符,包括空格、标点符号、数字、大小写字母和一些不可见字符。由于总共才128个字符,所以可以使用1个字节来进行编码,我们看一些字符的编码方式: 'L' -> 01001100(十六进制:0x4C,十进制:76) 'M' -> 01001101(十六进制:0x4D,十进制:77) ISO 8859-1 字符集 共收录256个字符,是在 ASCII 字符集的基础上又扩充了128个西欧常用字符(包括德法两国的字母),也可以使用1个字节来进行编码。这个字符集也有一个别名 latin1 。 MySQL中的utf8和utf8mb4 我们上边说 utf8 字符集表示一个字符需要使用1~4个字节,但是我们常用的一些字符使用1~3个字节就可以表示了。而在 MySQL 中字符集表示一个字符所用最大字节长度在某些方面会影响系统的存储和性能,所以设计 MySQL 的大叔偷偷的定义了两个概念: utf8mb3 :阉割过的 utf8 字符集,只使用1~3个字节表示字符。 utf8mb4 :正宗的 utf8 字符集,使用1~4个字节表示字符。 有一点需要大家十分的注意,在 MySQL 中 utf8 是 utf8mb3 的别名,所以之后在 MySQL 中提到 utf8 就意味着使用1~3个字节来表示一个字符

50种方法优化SQL Server

冷暖自知 提交于 2019-11-28 11:38:14
查询速度慢的原因很多,常见如下几种:      1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)      2、I/O吞吐量小,形成了瓶颈效应。      3、没有创建计算列导致查询不优化。      4、内存不足      5、网络速度慢      6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量)      7、锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷)      8、sp_lock,sp_who,活动的用户查看,原因是读写竞争资源。      9、返回了不必要的行和列      10、查询语句不好,没有优化   可以通过如下方法来优化查询 :      1、把数据、日志、索引放到不同的I/O设备上,增加读取速度,以前可以将Tempdb应放在RAID0上,SQL2000不在支持。数据量(尺寸)越大,提高I/O越重要.      2、纵向、横向分割表,减少表的尺寸(sp_spaceuse)      3、升级硬件      4、根据查询条件,建立索引,优化索引、优化访问方式,限制结果集的数据量。注意填充因子要适当(最好是使用默认值0)。索引应该尽量小,使用字节数小的列建索引好(参照索引的创建),不要对有限的几个值的字段建单一索引如性别字段      5、提高网速;      6、扩大服务器的内存,Windows 2000和SQL

50种方法优化SQL Server

折月煮酒 提交于 2019-11-28 11:37:57
查询速度慢的原因很多,常见如下几种:      1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)      2、I/O吞吐量小,形成了瓶颈效应。      3、没有创建计算列导致查询不优化。      4、内存不足      5、网络速度慢      6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量)      7、锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷)      8、sp_lock,sp_who,活动的用户查看,原因是读写竞争资源。      9、返回了不必要的行和列      10、查询语句不好,没有优化   可以通过如下方法来优化查询 :      1、把数据、日志、索引放到不同的I/O设备上,增加读取速度,以前可以将Tempdb应放在RAID0上,SQL2000不在支持。数据量(尺寸)越大,提高I/O越重要.      2、纵向、横向分割表,减少表的尺寸(sp_spaceuse)      3、升级硬件      4、根据查询条件,建立索引,优化索引、优化访问方式,限制结果集的数据量。注意填充因子要适当(最好是使用默认值0)。索引应该尽量小,使用字节数小的列建索引好(参照索引的创建),不要对有限的几个值的字段建单一索引如性别字段      5、提高网速;      6、扩大服务器的内存,Windows 2000和SQL

keepalived+nginx+lnmp 网站架构

孤者浪人 提交于 2019-11-28 11:32:43
《网站架构演变技术研究》 项目实施手册 2019年8月2日 第一章 : 实验环境确认 4 1.1-1.系统版本 4 1.1-2.内核参数 4 1.1-3.主机网络参数设置 4 1-1-4 .项目拓扑图 5 第二章 : 部署后端web服务 6 2-1 .安装Nginx服务端 6 2-1-1 .安装nginx 依赖包 6 2-1-3.修改Nginx配置文件 7 2-1-4.创建nginx启动文件软链接 8 2-1-5.启动nginx,开机自启 8 2-1-6. 查询端口80状况 8 2-1-7.安装其他web服务器 8 2-2 .部署PHP环境 9 2-2-1 .安装PHP 软件 9 2-2-3. 查询端口9000状况 9 2-2-3.安装其他web服务器 9 第三章 : 部署NFS服务 9 3-1 .安装NFS 服务器端 10 3.1-1 .nfs软件安装 10 3-1-2 .创建共享目录 10 3-1-3. 修改/etc/exports配置文件 10 3-1-4. 启动服务,开机自启 10 3-1-5. 本地挂载测试 10 3-2. 部署web客户端挂载nfs存储 11 3-2-1.配置web服务器 11 3-2-2.手动挂载-临时挂载 11 3-2-3. 配置开机自动挂载-永久挂载 11 3-2-4. 安装其他 web服务器 12 3-3. 部署rsync备份服务器 12 3-3

Day6:完成API的列举设计

社会主义新天地 提交于 2019-11-28 11:00:53
今天完成的工作 : 基于昨天的数据库的设计,与组员一同使用eolinker完成了API的设计与编写。具体API设计如下图。 其中以获取openid为例 示例如下 明日计划 :使用mysql数据库、maven仓库、IntelliJ IDEA IDE基本完成本地java后台服务器的搭建,操作数据库,通过花生壳内网穿透。 每日小结 :计划于下周开始编程任务,但实际上服务器还未完成搭建。在咨询了同学和老师后,了解到微信小程序中实现实时聊天在实际操作中可能遇到的障碍和难度。可能在后期还需要对目前的功能实现方式进行修改和完善。后期的过程中还要针对特定编程对目前的数据库和API进行改进。 来源: https://www.cnblogs.com/Askia/p/11405923.html

【讲清楚,说明白!】Zabbix企业级自动化监控入门

一个人想着一个人 提交于 2019-11-28 09:02:06
Zabbix是什么: Zabbix是由工程师Alexei Vladishev创建,目前有Zabbix SIA在持续开发和支持。Zabbix是一个企业级的分布式开源监控方案。Zabbix是一款能够监控各种网络参数以及服务器健康性和完整性的软件。Zabbix使用灵活的通知机制,允许用户为几乎任何事件配置基于邮件的告警。这样可以快速反馈服务器的问题。基于已存储的数据,Zabbix提供了出色的报告和数据可视化功能。这些功能使得Zabbix成为容量规划的理想方案。Zabbix支持主动轮询和被动捕获。Zabbix所有的报告、统计信息和配置参数都可以通过基于Web前端页面进行访问。基于Web的前端页面可以确保您从任何方面评估您的网络状态和服务器的健康性。适当的配置后,Zabbix可以在IT基础架构监控方面扮演重要的角色。对于只有少量服务器的小型组织和拥有大量服务器的大型公司也同样如此。Zabbix是免费的,Zabbix是根据GPL通用公共许可证第二版编写和发行的。意味着它的源代码都是免费发行的,可供公众任意使用。目前世界各地许多不同规模的组织将Zabbix作为主要的监控平台。 Zabbix监控是一个基于WEB界面的提供分布式系统监控以及网络监控功能的企业级的开源解决方案。Zabbix能监视各种网络参数,保证服务器系统的安全运营,并提供灵活的通知机制让系统管理员快速定位并解决存在的各种问题

MySQL数据库安装配置和启动

时光怂恿深爱的人放手 提交于 2019-11-28 07:54:03
MySQL数据库安装配置和启动    1,下载MySQL   打开MySQL的官网www.mysql.com,发现有一个DOWNLOADS   点击它,进入到MySQL的下载页面,在页面的底部有一个MySQL Community Edition, 并且下面有一个蓝色的链接   点击这个蓝色的链接,进入到社区版本,也就是免费版本的下载页面 ,MySQL Community Downloads字样下面有一个 MySQL Community Server (GPL),   点击它,或点击下面download, 这才真正进入到MySQL 的下载页面,向下滑动页面,看到下图,选择操作系统及其版本,点击右侧的箭头进行选择,   我是64位的window系统,所以做了上述选择,选择好后,你会看到上图的下面会进行局部刷新,然后出现适合我们操作系统的版本   选择一个,点击右侧的Download按钮进行下载,它会跳转到一个页面让你注册,如果你想登录或注册,就点击页面上两个大按钮,如果不想注册,向下滑动页面,它有一个No thanks 的字样(如下图),点击它,就可以进行下载   下载完成后,它是一个压缩文件,把它放到想要放置的位置,如D 盘,用解压软件解压到当前文件夹,D 盘就会多了一个文件夹,如下图   2 ,配置环境变量    环境变量的配置,和java的配置方式一致,就是把MySQL

1.1、Mysql 学习——从数据库事务规范 到 Mysql 的 InnoDB 对事务特性的具体实现

不问归期 提交于 2019-11-28 07:23:31
文章目录 前言 数据库事务 ACID的概念 ANSI SQL 隔离级别 Mysql 的服务器逻辑架构 Mysql 服务器层不负责事务 Mysql 服务器层和存储引擎 更细化的一个图片 存储引擎和事务 支持事务的存储引擎 MyISAM 不支持事物 存储引擎的混用 Mysql 支持表锁和行锁 Mysql 和表锁 Mysql和行锁 InnoDB 中的事务和锁 Mysql 默认的事务级别是 可重复读 MVCC的概念 InnoDB 对MVCC的实现 MVCC 在什么时候生效? InnoDB 的行锁 InnoDB 独有的间隙锁 间隙所生效的隔离级别 可重复读状态下的间隙锁可以起到 避免幻读的作用 参考资料 前言 体能状态先于精神状态,习惯先于决心,聚焦先于喜好。 数据库事务 ACID的概念 暂略 ANSI SQL 隔离级别 暂略 Mysql 的服务器逻辑架构 Mysql 的服务器逻辑架构分为 服务器层和存储引擎层,服务器层调用存储引擎层。 每一个表可以指定存储引擎的类型。 图片来自互联网 Mysql 服务器层不负责事务 Mysql 的服务层不负责事务的实现,具体事务的实现由存储引擎负责。 需要强调的是不是所有的存储引擎都支持事务。比如 InnoDB 支持,MyISAM 不支持。 Mysql 服务器层和存储引擎 更细化的一个图片 图片来自互联网 存储引擎和事务 支持事务的存储引擎 Mysql