数据库服务器

mysql主从配置

送分小仙女□ 提交于 2019-12-21 09:22:56
mysql主从配置。如下环境测试的:   主数据库所在的操作系统:windows server 2012   主数据库的版本:5.7   主数据库的ip地址:阿里服务器IP   从数据库所在的操作系统:windows server 2012   从数据的版本:5.7   从数据库的ip地址:内网IP 配置步骤: 主服务器:  1、确保主数据库与从数据库一模一样。   2、在主数据库上创建同步账号。      GRANT ALL ON test.* TO 'mstest'@'%' IDENTIFIED BY '123456';    test.*:是针对test数据库里的所有表进行配置  %:是针对所有IP开放,针对某个IP换成固定IP     mstest:是新创建的用户名     123456:是新创建的用户名的密码   3、配置主数据库的my.ini(安装版在C:\ProgramData\MySQL\MySQL Server 5.7)。 在文件末尾添加: #Master Config server-id=1 log-bin=mysql-bin binlog-do-db=test    //要同步的test数据库,要同步多个数据库,就多加几个binlog-do-db=数据库名 binlog-ignore-db=mysql //要忽略的数据库 4、重启主数据库的mysql服务。 5

sql全维度语句大全

梦想的初衷 提交于 2019-12-21 05:23:10
一、基础 1、说明:创建数据库 CREATE DATABASE database-name 2 、说明:删除数据库 drop database dbname 3、说明:备份sql server --- 创建 备份数据的 device USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c:mssql7backupMyNwind_1.dat' --- 开始 备份 BACKUP DATABASE pubs TO testBack 4、说明:创建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 根据已有的表创建新表: A:create table tab_new like tab_old (使用旧表创建新表) B :create table tab_new as select col1,col2… from tab_old definition only 5、说明:删除新表 drop table tabname 6、说明:增加一个列 Alter table tabname add column col type 注 :列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度

MySQL——MMM高可用

余生颓废 提交于 2019-12-20 18:55:24
MySQL-MMM优缺点: 优点:高可用性,扩展性好,出现故障自动切换,对于主主同步,在同一时间只提供一台数据库写操作,保证的数据的一致性。 缺点:Monitor节点是单点,可以结合Keepalived实现高可用。 实验环境: master1服务器 192.168.13.167 master2服务器 192.168.13.151 slave1服务器 192.168.13.168 slave2服务器 192.168.13.145 monitor服务器 192.168.13.164 1、在master1\master2\slave1\slave2都需要安装MYSQL数据库 [root@master1 ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo ##获取源地址 [root@master1 ~]# yum -y install epel-release ##安装epel源 [root@master1 ~]# yum clean all && yum makecache ##yum缓存清空 [root@master1 ~]# yum -y install mariadb-server mariadb ##安装mariadb数据库 [root@master1

记一次个人站点服务器拆迁过程

旧时模样 提交于 2019-12-20 11:58:00
起因 前段时间想着将博客站设置https,在实践的过程中出了不少错误,而且发现现在的服务端不利于快速维护。所以考虑再三直接重新搞了一个服务器。在此记录过程。 步骤简要 快照一下硬盘 将整个站点文件夹down到本地 进入数据库导出数据库- 重装纯净Linux系统(注意版本) 安装宝塔面板(最终选择了这个) 使用面板安装站点,创建数据库(记得和之前的站点信息要一致) 将down下的文件放到站点目录 导入数据库-备份成功 首先为了出现意外我把整个服务硬盘先备份了一下,之后下载整个站点的文件,下载完之后 进入mysql数据库导出所有的数据,这样的话东西都具有了,重新安装了Linux系统,去宝塔官网查看Linux安装面板方法,安装好后使用web端安装WordPress网站,站点信息(域名/数据库)和之前的保持一致,上传之前导出的整个站点到刚才创建的文件夹下,利用宝塔的可视化导入数据库,成功-网站运行 成功之后 在宝塔-网站-设置中配置https(可以去腾讯云/阿里云文档介绍查看学习https申请)。 接着为了安全 进入腾讯云设置了安全组策略。 虽然说的简单了写,中间遇到的一些坑也就自己知道了。唉… 来源: https://www.cnblogs.com/zhimalier/p/12072170.html

MySQL C API

限于喜欢 提交于 2019-12-20 08:51:44
一、数据类型 MYSQL MYSQL 是MYSQL数据库连接的句柄(handle),几乎所有的MYSQL函数都需使用该 数据结构, 不要尝试去复制该数据结构,因为不能保证副本是可用的 。 MYSQL_RES MYSQL_RES 是SQL查询结果(result of query)。 MYSQL_ROW MYSQL_ROW 代表着一行数据,它被实现可数字节的字符串(an array of counted byte strings), 但是认为它是以null为终结符的字符串 ,因为它可能包含二进制 数据。一行数据通常通过 mysql_fetch_row() 来获取。 MYSQL_FIELD MYSQL_FIELD 包含元数据 metadata ,字段的信息(例如字段名,数据类型,大小等) 通常可以通过重复使用 mysql_fetch_field 逐个获取字段,但字段值不包括在这个结构 中,而是包含在 MYSQL_ROW . MYSQL_FIELD的数据成员,当使用在不同场合,它的数据成员有不同含义: char* name : char* org_name : char* table : char* org_name : char* db : char* catlog : char* def : unsigned long length : unsigned long max_length

SQL Server DBCC命令大全

你离开我真会死。 提交于 2019-12-20 07:31:15
SQL Server DBCC命令大全 原文出处: https://www.cnblogs.com/lyhabc/archive/2013/01/19/2867174.html DBCC DROPCLEANBUFFERS:从缓冲池中删除所有缓存,清除缓冲区 在进行测试时,使用这个命令可以从SQLSERVER的数据缓存data cache(buffer)清除所有的测试数据,以保证测试的公正性。 需要注意的是这个命令只移走干净的缓存,不移走脏缓存。由于这个原因,在执行这个命令前,应该先执行CheckPoint,将所有脏的缓存写入磁盘, 这样在运行DBCC RROPCLEANBUFFERS 时,可以保证所有的数据缓存被清理,而不是其中的一部分。 DBCC CacheStats:显示存在于当前buffer Cache中的对象的信息,例如:hit rates,编译的对象和执行计划 DBCC ErrorLog :如果很少重启mssqlserver服务,那么服务器的日志(不是数据库事务日志)会增长得很快,而且打开和查看日志的速度也会很慢 使用这个命令,可以截断当前的服务器日志,主要是生成一个新的日志。可以考虑设置一个调度任务,每周执行这个命令自动截断服务器日志。 使用存储过程sp_cycle_errorlog也可以达到同样的目的 一、DBCC 帮助类命令 DBCC HELP('?')

数据库分库分表

让人想犯罪 __ 提交于 2019-12-19 17:06:38
1. 数据库分库分表 1.1. 前言 1.1.1. 名词解释 1.2. 数据库架构演变 1.3. 分库分表前的问题 1.3.1. 用户请求量太大 1.3.2. 单库太大 1.3.3. 单表太大 1.4. 分库分表的方式方法 1.4.1. 垂直拆分 1.4.2. 水平拆分 1.5. 分库分表后面临的问题 1.5.1. 事务支持 1.5.2. 多库结果集合并(group by,order by) 1.5.3. 跨库join 1.6. 分库分表方案产品 1.7. 为什么不建议分库分表 1.8. 参考 数据库分库分表 前言 公司最近在搞服务分离,数据切分方面的东西,因为单张包裹表的数据量实在是太大,并且还在以每天60W的量增长。 之前了解过数据库的分库分表,读过几篇博文,但就只知道个模糊概念, 而且现在回想起来什么都是模模糊糊的。 今天看了一下午的数据库分库分表,看了很多文章,现在做个总结,“摘抄”下来。(但更期待后期的实操) 会从以下几个方面说起: 第一部分:实际网站发展过程中面临的问题。 第二部分:有哪几种切分方式,垂直和水平的区别和适用面。 第三部分:目前市面有的一些开源产品,技术,它们的优缺点是什么。 第四部分:可能是最重要的,为什么不建议水平分库分表!?这能让你能在规划前期谨慎的对待,规避掉切分造成的问题。 名词解释 库:database;表:table;分库分表

数据库连接池的问题

谁都会走 提交于 2019-12-19 12:50:14
数据库连接池技术带来的优势: 1. 资源重用 由于数据库连接得到重用,避免了频繁创建、释放连接引起的大量性能开销。在减少系统消耗的基础上,另一方面也增进了系统运行环境的平稳性(减少内存碎片以及数据库临时进程/线程的数量)。 2. 更快的系统响应速度 数据库连接池在初始化过程中,往往已经创建了若干数据库连接置于池中备用。此时连接的初始化工作均已完成。对于业务请求处理而言,直接利用现有可用连接,避免了数据库连接初始化和释放过程的时间开销,从而缩减了系统整体响应时间。 3. 新的资源分配手段 对于多应用共享同一数据库的系统而言,可在应用层通过数据库连接的配置,实现数据库连接池技术,几年钱也许还是个新鲜话题,对于目前的业务系统而言,如果设计中还没有考虑到连接池的应用,那么…….快在设计文档中加上这部分的内容吧。某一应用最大可用数据库连接数的限制,避免某一应用独占所有数据库资源。 4. 统一的连接管理,避免数据库连接泄漏 在较为完备的数据库连接池实现中,可根据预先的连接占用超时设定,强制收回被占用连接。从而避免了常规数据库连接操作中可能出现的资源泄漏。一个最小化的数据库连接池实现. 连接池类是对某一数据库所有连接的“缓冲池”,主要实现以下功能:①从连接池获取或创建可用连接;②使用完毕之后,把连接返还给连接池;③在系统关闭前,断开所有连接并释放连接占用的系统资源;④还能够处理无效连接

MySQL报错:不能区分大小写(Linux下部署MySQL)

大憨熊 提交于 2019-12-19 04:45:27
今天运行项目,发现报错了。错误信息这会没有了,描述的是找不到表。 到数据库进行查询如下图所示: 可以发现问题了,数据库不支持大小写。 通过该博客,可以发现,到服务器进行添加一条配置,并重启即可; https://www.cnblogs.com/skyessay/p/9082148.html 在 etc目录下,并进行编辑my.cnf。 最后一行加上下面一句 lower_case_table_names = 1 保存后,重启mysql: systemctl restart mysqld 再次连接后,发现可以了。即解决了! 来源: CSDN 作者: virtuousOne 链接: https://blog.csdn.net/qq_35529931/article/details/103603560

分库分表之第一篇

空扰寡人 提交于 2019-12-19 01:05:37
分库分表之第一篇 1.概述 1.1.分库分表是什么 1.2.分库分表的方式 1.2.1.垂直分表 1.2.2.垂直分库 1.2.3.水平分库 1.2.4.水平分表 1.2.5 小结 1.3.分库分表带来的问题 1.3.1.事务一致性问题 1.3.2.跨节点关联查询 1.3.3.跨节点分页、排序函数 1.3.4.主键避重 1.3.5.公共表 1.4 Sharding-JDBC介绍 1.4.1 Sharding-JDBC介绍 1.4.2 与jdbc性能对比 1.概述 1.1.分库分表是什么 小明是一家初创电商平台的开发人员,他负责卖家模块的功能开发,其中涉及了店铺、商品的相关业务,设计如下数据库 : 通过以下SQL能够获取到商品相关的店铺信息、地理区域信息 : SELECT p . * , r . [ 地理区域名称 ] , s . [ 店铺名称 ] , s . [ 信誉 ] FROM [ 商品信息 ] p LEFT JOIN [ 地理区域 ] r ON p . [ 产地 ] = r . [ 地理区域编码 ] LEFT JOIN [ 店铺信息 ] s ON p . id = s . [ 所属店铺 ] WHERE p . id = ? 形成类似以下列表展示 : 随着公司业务快速发展,数据库中的数据量猛增,访问性能也变慢了,优化迫在眉睫。分析一下问题出现在哪儿 呢?