master

MHA常见报错以及解决方法

纵饮孤独 提交于 2020-01-14 08:49:37
error 1 运行masterha_check_repl --conf=/etc/masterha/app1.cnf报错 Testing mysql connection and privileges..sh: mysql: command not found mysql command failed with rc 127:0! at /usr/bin/apply_diff_relay_logs line 375 解决方案:ln -s /usr/local/mysql/bin/mysql /usr/bin error 2 运行masterha_check_repl --conf=/etc/masterha/app1.cnf报错 Can't exec "mysqlbinlog": No such file or directory at /usr/local/perl5/MHA/BinlogManager.pm line 99. 解决方案:在node节点上执行 which mysqlbinlog,比如我的结果就是 [localhost~]$ which mysqlbinlog /usr/local/mysql/bin/mysqlbinlog ln -s /usr/local/mysql/bin/mysqlbinlog /usr/bin/mysqlbinlog error 3

MySQL 5.7在线设置复制过滤

[亡魂溺海] 提交于 2020-01-14 07:03:17
很久没有更新博客了,主要是公司事情比较多,最近终于闲下来了。然而5.7也GA了,有许多新的特性,其中现在可以进行在线设置复制过滤了。但是还是得停复制,不过不用重启实例了。方便了DBA们进行临时性的调整。下面就简单的测试一下。MySQL 5.7的安装有了很大的变化,我主要是安装的二进制版本。关于如何安装以及如何搭建好复制这种小事,相信聪明的你可以很快搞定。安装请参考 http://dev.mysql.com/doc/refman/5.7/en/binary-installation.html 下面进行复制过滤设置测试。 mysql> show slave status\G *************************** 1. row *************************** Slave_IO_State: Waiting for master to send event Master_Host: 10.69.25.173 Master_User: repl Master_Port: 3306 Connect_Retry: 60 Master_Log_File: mysql-bin.000001 Read_Master_Log_Pos: 1902 Relay_Log_File: relaylog.000002 Relay_Log_Pos: 2068 Relay

Zookeeper-Hadoop HA (高可用) 安装配置及下载地址

喜你入骨 提交于 2020-01-14 04:39:41
使用安装包版本: hadoop-2.6.0.tar.gz 下载地址 https://www.apache.org/dyn/closer.cgi/hadoop/common jdk-8u221-linux-x64.tar.gz 下载地址 https://www.java.com/en/download/manual.jsp zookeeper-3.4.5.tar.gz 下载地址 https://www.apache.org/dyn/closer.cgi/zookeeper/ 主机IP映射 [root@master conf] # vi /etc/hosts 127 . 0 . 0 . 1 localhost localhost . localdomain localhost4 localhost4 . localdomain4 ::1 localhost localhost . localdomain localhost6 localhost6 . localdomain6 192 . 168 . 176 . 41 master 192 . 168 . 176 . 42 slave1 192 . 168 . 176 . 43 slave2 环境变量~/.bash_profile [root@master hadoop] # vi ~/.bash_profile JAVA_HOME=

Flink的安装配置

谁都会走 提交于 2020-01-14 04:35:58
一. Flink的下载 安装包下载地址: http://flink.apache.org/downloads.html ,选择对应Hadoop的Flink版本下载 [admin@node21 software]$ wget http://mirrors.tuna.tsinghua.edu.cn/apache/flink/flink-1.6.1/flink-1.6.1-bin-hadoop27-scala_2.11.tgz [admin@node21 software]$ ll -rw-rw-r-- 1 admin admin 301867081 Sep 15 15:47 flink-1.6.1-bin-hadoop27-scala_2.11.tgz Flink 有三种部署模式,分别是 Local、Standalone Cluster 和 Yarn Cluster。 二. L ocal模式 对于 Local 模式来说,JobManager 和 TaskManager 会公用一个 JVM 来完成 Workload。如果要验证一个简单的应用,Local 模式是最方便的。实际应用中大多使用 Standalone 或者 Yarn Cluster,而local模式只是将安装包解压启动(./bin/start-local.sh)即可,在这里不在演示。 三. Standalone 模式

如何删除所有已合并的Git分支?

二次信任 提交于 2020-01-14 02:56:55
我有很多Git分支。 如何删除已经合并的分支? 有没有一种简单的方法可以将它们全部删除,而不是一个一个地删除它们? #1楼 我使用以下Ruby脚本删除我已经合并的本地和远程分支。 如果我要对具有多个远程服务器的存储库执行此操作,而只想从其中删除,则只需将select语句添加到远程服务器列表中,即可获取所需的远程服务器。 #!/usr/bin/env ruby current_branch = `git symbolic-ref --short HEAD`.chomp if current_branch != "master" if $?.exitstatus == 0 puts "WARNING: You are on branch #{current_branch}, NOT master." else puts "WARNING: You are not on a branch" end puts end puts "Fetching merged branches..." remote_branches= `git branch -r --merged`. split("\n"). map(&:strip). reject {|b| b =~ /\/(#{current_branch}|master)/} local_branches= `git branch -

mysql主从复制

烈酒焚心 提交于 2020-01-14 02:49:44
1、拓扑图 2、原理 从库生成两个线程,一个I/O线程,一个SQL线程; i/o线程去请求主库 的binlog,并将得到的binlog日志写到relay log(中继日志) 文件中; 主库会生成一个 log dump 线程,用来给从库 i/o线程传binlog; SQL 线程,会读取relay log文件中的日志,并解析成具体操作,来实现主从的操作一致,而最终数据一致; 3、如何安装第二个mysql mysql5.7版安装教程 1、同mysql5.7版安装教程第一步 2、同mysql5.7版安装教程第二步 3、用管理员身份运行cmd,执行mysqld --install命令(指定服务名) mysqld --install MySQL8.0.17MASTER --defaults-file=“D:\development-software\mysql\one-master-one-slave\mysql-8.0.17-winx64-master\my.ini” 4、修改注册表 HKEY_LOCAL_MACHINE–>SYSTEM–>CurrentControlSet–>Services 找到刚才创建的MySQL8.0.17MASTER,将ImagePath修改成如下 D:\development-software\mysql\one-master-one-slave\mysql-8

MySQL的备份和恢复案例

天涯浪子 提交于 2020-01-13 20:15:32
文章目录 Crash Recovery 使用mysqldump进行 SQL-Format备份和恢复 使用mysqldump进行 Delimited-Text备份和恢复 使用binlog进行时间点恢复 Crash Recovery 当发生电眼掉电或硬件故障,MySQL重新启动时会自动进行Crash Recovery,从日志文件中读取pending的信息,rollback uncommit同时把已经提交的交易flush到datafile,这些信息可以从MySQL的错误日志中看到,这里我用kill -9模拟宕机: 使用mysqldump进行 SQL-Format备份和恢复 全量备份: shell> mysqldump --all-databases --master-data --single-transaction > backup_sunday_1_PM.sql 这里包含着备份时间点信息: -- -- Position to start replication or point-in-time recovery from -- CHANGE MASTER TO MASTER_LOG_FILE='master-binlog.000015', MASTER_LOG_POS=194; 我们可以在备份时进行日志切换 shell> mysqldump --single-transaction

redis安装

眉间皱痕 提交于 2020-01-13 20:06:45
redis简介 redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集合)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类keyvalue存储的不足,在部分场合可以对关系数据库起到很好的补充作用。 单点redis 安装 必须使用root用户,不然会出现权限问题 1、上传redis-2.8.19.tar.gz 2、解压 tar -zxvf redis-2.8.19.tar.gz -C apps/ 3、重命名 mv redis-2.8.19/ redis 4、进入目录 cd redis/ 5、make test 如果最后结果如下则没有错误 \o/ All tests passed without errors! Cleanup: may

安装saltstack

别等时光非礼了梦想. 提交于 2020-01-13 12:00:48
 salt分为master端和minion端,本节介绍下如何通过yum方式安装saltstack。 一、安装master端(salt-master) <1>安装EPEL [root@master ~]# rpm -ivh https://mirrors.aliyun.com/epel/epel-release-latest-6.noarch.rpm <2>安装salt-master [root@master ~]# yum -y install salt-master [root@master ~]# chkconfig salt-master on <3>配置salt-master [root@master ~]# vim /etc/salt/master 15 interface: 192.168.200.101 //绑定master通信IP 303 auto_accept: True //自动认证 599 file_roots: //指定文件根目录位置 600 base: 601 - /srv/salt/ <4>启动salt-master服务 [root@master ~]# service salt-master start Starting salt-master daemon: [确定] 二、安装minion端(salt-minion) <1>安装EPEL [root

如何克隆到非空目录?

孤人 提交于 2020-01-13 06:08:15
我的目录A具有与目录B匹配的文件。目录A可能还有其他需要的文件。 目录B是 git 仓库。 我想将目录B克隆到目录A,但是git-clone不允许我这样做,因为该目录是非空的。 我希望它只是克隆.git,既然所有文件都匹配,我可以从那里去吗? 我无法克隆到空目录,因为目录A中的文件不在目录B中,因此我想保留它们。 复制.git是不可行的,因为我想使用refs进行推/拉操作,并且我不想手动设置它们。 有什么办法吗? 更新:我认为这可行,任何人都可以看到任何问题吗? -> cd a git clone --no-hardlinks --no-checkout ../b a.tmp mv a.tmp/.git . rm -rf a.tmp git unstage # apparently git thinks all the files are deleted if you don't do this #1楼 这是我遇到相同问题时所要做的(至少我认为这是相同问题)。 我进入目录A并运行 git init 。 由于我不希望目录A中的文件后面跟随git,因此我编辑了.gitignore并将现有文件添加到其中。 在此之后,我运行 git remote add origin '<url>' && git pull origin master 等,然后将B克隆到A中,而不会打h。 #2楼