共计 96951 个字符,预计需要花费 243 分钟才能阅读完成。
1.MySQL 主从复制主要用途: 读写分离
在开发工作中,有时候会遇见某个 SQL 语句需要锁表,导致暂时不能使用读的服务,这样会影响现有业务,使用主从复制,让主库负责写,从库负责读,这样,即使主库出现了锁表的情况,通过读从库也可以保障业务的正常运作。另外,随着系统中业务访问量的增大,如果是单机部署数据库,就会导致 I / O 访问率过高,有了主从复制,增加多个数据存储节点,将负载分布到多个从节点,降低单机 I / O 磁盘访问率,从而提高 I / O 性能。
2. MySQL 复制原理
(1). 在 Slave 服务器上执行 start slave 命令开启主从复制开关,开始进行主从复制;
(2). 此时,Slave 服务器的 I / O 线程会使用通过在 master 上已经授权的可以进行复制操作的用户连接 master 服务器,并请求从执行 binlog 日志文件的指定位置 (日志文件名和位置就是在配置主从复制服务执行 change master 命令指定的) 之后开始发送 binlog 日志内容;
(3).Master 服务器接收到来自 Slave 服务器的 I / O 线程的请求后,二进制转储 I / O 线程会根据 Slave 服务器的 I / O 线程请求的信息分批读取指定 binlog 日志文件指定位置之后的 binlog 日志信息,然后返回给 Slave 端的 I / O 线程,返回信息中除了 binlog 日志内容外,还有在 Master 服务器端记录的新的 binlog 文件名称,以及在新的 binlog 中的下一个指定更新位置。
(4). 当 Slave 服务器的 I / O 线程获取到 Master 服务器上 I / O 线程发送的日志内容、日志文件及位置后,会将 binlog 日志内容依次写入到 Slave 端自身的 Relay Log(中继日志)文件的最末端,并将新的 binlog 文件名和位置记录到 master-info 文件中,以便下一次读取 master 端新 binlog 日志时能告诉 Slave 服务器从新的 binlog 日志的指定文件及指定位置开始读取新的 binlog 日志内容;
(5).Slave 服务器端的 SQL 线程会实时检测本地 Relay Log 中 I / O 线程新增的日志内容,然后把 Relay Log 文件中的内容解析成 SQL 语句,并在自身 Slave 服务器上按解析 SQL 语句的位置顺序执行应用这样的 SQL 语句,并在 Relay-Log.info 中记录当前应用中继日志的文件名和位置点。
或者简单来总结就是:
- 主库 db 的更新事件 (update、insert、delete) 被写到 binlog
- 主库创建一个 binlog dump thread,把 binlog 的内容发送到从库
- 从库启动并发起连接,连接到主库
- 从库启动之后,创建一个 I / O 线程,读取主库传过来的 binlog 内容并写入到 relay log
- 从库启动之后,创建一个 SQL 线程,从 relay log 里面读取内容,从 Exec_Master_Log_Pos 位置开始执行读取到的更新事件,将更新内容写入到 slave 的 db
下面开始 MySQL 主从复制的实战部分
- 准备环境: 两台 CentOS7 操作系统
[root@mysql-master ~]# uname -a
Linux mysql-master 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@MySQL-Slave ~]# uname -a
Linux MySQL-Slave 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
2.YUM 配置
采用阿里 YUM 源
[root@mysql-master ~]# cd /etc/yum.repos.d/
[root@mysql-master yum.repos.d]# pwd
/etc/yum.repos.d
[root@mysql-master yum.repos.d]# ls
CentOS-Base.repo CentOS-CR.repo CentOS-Debuginfo.repo CentOS-fasttrack.repo CentOS-Media.repo CentOS-Sources.repo CentOS-Vault.repo
将系统自带的 repo 文件进行备份
Master 端:
[root@mysql-master yum.repos.d]# mkdir bak
[root@mysql-master yum.repos.d]# ls
bak CentOS-Base.repo CentOS-CR.repo CentOS-Debuginfo.repo CentOS-fasttrack.repo CentOS-Media.repo CentOS-Sources.repo CentOS-Vault.repo
[root@mysql-master yum.repos.d]# mv ./CentOS-* ./bak/
[root@mysql-master yum.repos.d]# ls
bak
[root@mysql-master yum.repos.d]# ls bak/
CentOS-Base.repo CentOS-CR.repo CentOS-Debuginfo.repo CentOS-fasttrack.repo CentOS-Media.repo CentOS-Sources.repo CentOS-Vault.repo
[root@mysql-master yum.repos.d]#
下载阿里云 repo 文件
[root@mysql-master yum.repos.d]# wget http://mirrors.aliyun.com/repo/Centos-7.repo
--2019-09-11 17:46:52-- http://mirrors.aliyun.com/repo/Centos-7.repo
Resolving mirrors.aliyun.com (mirrors.aliyun.com)... 219.144.98.104, 219.144.98.98, 219.144.98.99, ...
Connecting to mirrors.aliyun.com (mirrors.aliyun.com)|219.144.98.104|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2523 (2.5K) [application/octet-stream]
Saving to:‘Centos-7.repo’100%[===========================================================================================================================================>] 2,523 --.-K/s in 0.001s
2019-09-11 17:46:52 (3.43 MB/s) -‘Centos-7.repo’saved [2523/2523]
[root@mysql-master yum.repos.d]# ls
bak Centos-7.repo
[root@mysql-master yum.repos.d]#
修改 /etc/yum.conf 文件
[root@mysql-master yum.repos.d]# sed -i 's/keepcache=0/keepcache=1/g' /etc/yum.conf
[root@mysql-master yum.repos.d]# cat /etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=1
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release
# This is the default, if you make this bigger yum won't see if the metadata
# is newer on the remote and so you'll"gain" the bandwidth of not having to
# download the new metadata and "pay" for it by yum not having correct
# information.
# It is esp. important, to have correct metadata, for distributions like
# Fedora which don't keep old packages around. If you don't like this checking
# interupting your command line usage, it's much better to have something
# manually check the metadata once an hour (yum-updatesd will do this).
# metadata_expire=90m
# PUT YOUR REPOS HERE OR IN separate files named file.repo
# in /etc/yum.repos.d
清除 YUM 缓存并生成新缓存
[root@mysql-master yum.repos.d]# yum clean all
Loaded plugins: fastestmirror
Cleaning repos: base extras updates
Cleaning up list of fastest mirrors
[root@mysql-master yum.repos.d]# yum makecache
Loaded plugins: fastestmirror
Determining fastest mirrors
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
base | 3.6 kB 00:00:00
extras | 3.4 kB 00:00:00
updates | 3.4 kB 00:00:00
(1/12): base/7/x86_64/group_gz | 166 kB 00:00:01
(2/12): base/7/x86_64/primary_db | 6.0 MB 00:00:17
(3/12): extras/7/x86_64/prestodelta | 73 kB 00:00:00
(4/12): extras/7/x86_64/filelists_db | 249 kB 00:00:01
(5/12): extras/7/x86_64/other_db | 131 kB 00:00:00
(6/12): extras/7/x86_64/primary_db | 215 kB 00:00:03
(7/12): updates/7/x86_64/prestodelta | 945 kB 00:00:04
(8/12): base/7/x86_64/filelists_db | 7.1 MB 00:00:34
(9/12): base/7/x86_64/other_db | 2.6 MB 00:00:19
(10/12): updates/7/x86_64/filelists_db | 5.2 MB 00:00:31
(11/12): updates/7/x86_64/other_db | 764 kB 00:00:01
(12/12): updates/7/x86_64/primary_db | 7.4 MB 00:00:30
Metadata Cache Created
查看目前可用的 YUM
[root@mysql-master yum.repos.d]# yum repolist all
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
repo id repo name status
base/7/x86_64 CentOS-7 - Base - mirrors.aliyun.com enabled: 10,019
centosplus/7/x86_64 CentOS-7 - Plus - mirrors.aliyun.com disabled
contrib/7/x86_64 CentOS-7 - Contrib - mirrors.aliyun.com disabled
extras/7/x86_64 CentOS-7 - Extras - mirrors.aliyun.com enabled: 435
updates/7/x86_64 CentOS-7 - Updates - mirrors.aliyun.com enabled: 2,500
repolist: 12,954
如果操作系统是最小化安装,那么为了避免后期缺少相关依赖包而造成的麻烦,这里开始安装必要的开发工具
安装 Epel 源
[root@mysql-master yum.repos.d]# yum install -y epel-release
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
Resolving Dependencies
--> Running transaction check
---> Package epel-release.noarch 0:7-11 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
=====================================================================================================================================================================================
Package Arch Version Repository Size
=====================================================================================================================================================================================
Installing:
epel-release noarch 7-11 extras 15 k
Transaction Summary
=====================================================================================================================================================================================
Install 1 Package
Total download size: 15 k
Installed size: 24 k
Downloading packages:
epel-release-7-11.noarch.rpm | 15 kB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : epel-release-7-11.noarch 1/1
Verifying : epel-release-7-11.noarch 1/1
Installed:
epel-release.noarch 0:7-11
Complete!
清除 YUM 缓存
[root@mysql-master yum.repos.d]# yum clean all
CentOS- 7 中安装开发工具的命令已经发生改变
[root@mysql-master yum.repos.d]# yum groupinstall "Development Tools" --setopt=group_package_types=mandatory,default,optional
Loaded plugins: fastestmirror
Determining fastest mirrors
epel/x86_64/metalink | 7.3 kB 00:00:00
* base: mirrors.aliyun.com
* epel: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
base | 3.6 kB 00:00:00
epel | 5.4 kB 00:00:00
extras | 3.4 kB 00:00:00
updates | 3.4 kB 00:00:00
(1/7): epel/x86_64/group_gz | 88 kB 00:00:00
(2/7): base/7/x86_64/group_gz | 166 kB 00:00:00
(3/7): epel/x86_64/updateinfo | 1.0 MB 00:00:00
(4/7): extras/7/x86_64/primary_db | 215 kB 00:00:00
(5/7): base/7/x86_64/primary_db | 6.0 MB 00:00:06
(6/7): updates/7/x86_64/primary_db | 7.4 MB 00:00:07
(7/7): epel/x86_64/primary_db | 6.8 MB 00:00:08
Resolving Dependencies
--> Running transaction check
---> Package ccache.x86_64 0:3.3.4-1.el7 will be installed
---> Package colordiff.noarch 0:1.0.13-2.el7 will be installed
---> Package cvsps.x86_64 0:2.2-0.14.b1.el7 will be installed
---> Package darcs.x86_64 0:2.8.4-4.el7 will be installed
--> Processing Dependency: ghc(array-0.4.0.1-3b78425c10ff2dad7acf7e8c8ae014c3) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(base-4.6.0.1-8aa5d403c45ea59dcd2c39f123e27d57) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(binary-0.5.1.1-72ed744c57c32286a49da6dda4f660b7) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(bytestring-0.10.0.2-4f93248f75667c2c3321a7a6761b576f) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(containers-0.5.0.0-ab1dae9a94cd3cc84e7b2805636ebfa2) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(dataenc-0.14.0.5-53e97aa81238832bc61a10c7ff992b10) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(deepseq-1.3.0.1-5cc4cd89bdc2e8f6db1833d95ec36926) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(directory-1.2.0.1-91a788fd88acd7f149f0f10f5f1e23f2) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(extensible-exceptions-0.1.1.4-255a395b3b026cb94b23754e1c372785) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(filepath-1.3.0.1-b12cbe18566fe1532a1fda4c85e31cbe) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(ghc-prim-0.3.0.0-d5221a8c8a269b66ab9a07bdc23317dd) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(hashed-storage-0.5.10-cd7e61fb2c15c5cfcf9b7ea2632c1f8b) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(haskeline-0.7.0.3-605bae79a8f13adb80fd401c73428585) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(html-1.0.1.2-50c4f9abf87a047261ace92afd5d4c6d) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(integer-gmp-0.5.0.0-2f15426f5b53fe4c6490832f9b20d8d7) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(mmap-0.5.8-867b6ad07eb48ef9e7b327f980535c80) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(mtl-2.1.2-94c72af955e94b8d7b2f359dadd0cb62) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(old-locale-1.0.0.5-6729cb9d9cc62d150655de8fc5401b91) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(old-time-1.1.0.1-2f8ea093d0c7014780a8a5772f948883) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(parsec-3.1.3-6c6e21cb4ed4ef9d58fdf442940b152e) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(primitive-0.5.0.1-8e5f40b409f7bb31ae1acfb125279700) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(process-1.1.0.2-76e05340eb66705981411022731ca84a) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(random-1.0.1.1-43fdc5da991685d8a0ec8cb553880cf8) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(regex-base-0.93.2-f9403610b59f8cc474edd63a82806d18) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(regex-compat-0.95.1-121c7124a3abcea107e3885c2f37e0cf) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(regex-posix-0.95.2-a7e936989950443fee47233b57a6ae5f) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(tar-0.4.0.1-907344c1240424224fde7bef0cb096e8) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(terminfo-0.3.2.5-c4d61afa49f870e2fe81788680aa7d36) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(text-0.11.3.1-e38859e86485c167fa7c9441789e7607) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(time-1.4.0.1-10dc4804a19dc0000fab79908f1a9f50) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(transformers-0.3.0.0-ff2bb6ac67241ebb987351a3db564af0) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(unix-2.6.0.1-4f219f792083f70ec440ce406f12ce57) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(utf8-string-0.3.7-26a8ed8ca48fe809983bde6faca943a9) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(vector-0.10.0.1-869166d5d49db46ce6c328ea5f8defbf) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: ghc(zlib-0.5.4.1-13ba81ac0d7e6f3bdf1ee5ddce4e9aab) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSarray-0.4.0.1-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSbase-4.6.0.1-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSbinary-0.5.1.1-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSbytestring-0.10.0.2-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHScontainers-0.5.0.0-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSdataenc-0.14.0.5-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSdeepseq-1.3.0.1-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSdirectory-1.2.0.1-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSextensible-exceptions-0.1.1.4-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSfilepath-1.3.0.1-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSghc-prim-0.3.0.0-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHShashed-storage-0.5.10-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHShaskeline-0.7.0.3-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHShtml-1.0.1.2-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSinteger-gmp-0.5.0.0-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSmmap-0.5.8-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSmtl-2.1.2-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSold-locale-1.0.0.5-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSold-time-1.1.0.1-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSparsec-3.1.3-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSprimitive-0.5.0.1-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSprocess-1.1.0.2-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSrandom-1.0.1.1-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSregex-base-0.93.2-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSregex-compat-0.95.1-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSregex-posix-0.95.2-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSrts_thr-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHStar-0.4.0.1-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSterminfo-0.3.2.5-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHStext-0.11.3.1-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHStime-1.4.0.1-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHStransformers-0.3.0.0-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSunix-2.6.0.1-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSutf8-string-0.3.7-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSvector-0.10.0.1-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
--> Processing Dependency: libHSzlib-0.5.4.1-ghc7.6.3.so()(64bit) for package: darcs-2.8.4-4.el7.x86_64
---> Package ghc.x86_64 0:7.6.3-26.4.el7 will be installed
--> Processing Dependency: ghc-compiler = 7.6.3-26.4.el7 for package: ghc-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-doc-index = 7.6.3-26.4.el7 for package: ghc-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-libraries = 7.6.3-26.4.el7 for package: ghc-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-ghc-devel = 7.6.3-26.4.el7 for package: ghc-7.6.3-26.4.el7.x86_64
---> Package haskell-platform.x86_64 0:2013.2.0.0-40.el7 will be installed
--> Processing Dependency: alex = 3.0.5 for package: haskell-platform-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-haskell-platform-devel = 2013.2.0.0-40.el7 for package: haskell-platform-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: happy = 1.18.10 for package: haskell-platform-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: cabal-install >= 1.16.1.0 for package: haskell-platform-2013.2.0.0-40.el7.x86_64
---> Package mock.noarch 0:1.4.16-1.el7 will be installed
--> Processing Dependency: Python(abi) = 3.6 for package: mock-1.4.16-1.el7.noarch
--> Processing Dependency: mock-core-configs >= 27.4 for package: mock-1.4.16-1.el7.noarch
--> Processing Dependency: python36-six >= 1.4.0 for package: mock-1.4.16-1.el7.noarch
--> Processing Dependency: /usr/bin/python3.6 for package: mock-1.4.16-1.el7.noarch
--> Processing Dependency: createrepo_c for package: mock-1.4.16-1.el7.noarch
--> Processing Dependency: pigz for package: mock-1.4.16-1.el7.noarch
--> Processing Dependency: python36-distro for package: mock-1.4.16-1.el7.noarch
--> Processing Dependency: python36-jinja2 for package: mock-1.4.16-1.el7.noarch
--> Processing Dependency: python36-pyroute2 for package: mock-1.4.16-1.el7.noarch
--> Processing Dependency: python36-requests for package: mock-1.4.16-1.el7.noarch
--> Processing Dependency: python36-rpm for package: mock-1.4.16-1.el7.noarch
--> Processing Dependency: usermode for package: mock-1.4.16-1.el7.noarch
--> Processing Dependency: yum-utils for package: mock-1.4.16-1.el7.noarch
---> Package ocaml.x86_64 0:4.05.0-6.el7 will be installed
--> Processing Dependency: ocaml-runtime = 4.05.0-6.el7 for package: ocaml-4.05.0-6.el7.x86_64
--> Processing Dependency: ocaml-srpm-macros for package: ocaml-4.05.0-6.el7.x86_64
---> Package qgit.x86_64 0:2.8-2.el7 will be installed
--> Processing Dependency: libQt5Core.so.5(Qt_5)(64bit) for package: qgit-2.8-2.el7.x86_64
--> Processing Dependency: libQt5Core.so.5(Qt_5.9)(64bit) for package: qgit-2.8-2.el7.x86_64
--> Processing Dependency: libQt5Gui.so.5(Qt_5)(64bit) for package: qgit-2.8-2.el7.x86_64
--> Processing Dependency: libQt5Widgets.so.5(Qt_5)(64bit) for package: qgit-2.8-2.el7.x86_64
--> Processing Dependency: libQt5Core.so.5()(64bit) for package: qgit-2.8-2.el7.x86_64
--> Processing Dependency: libQt5Gui.so.5()(64bit) for package: qgit-2.8-2.el7.x86_64
--> Processing Dependency: libQt5Widgets.so.5()(64bit) for package: qgit-2.8-2.el7.x86_64
---> Package sbcl.x86_64 0:1.4.0-1.el7 will be installed
--> Processing Dependency: common-lisp-controller for package: sbcl-1.4.0-1.el7.x86_64
--> Processing Dependency: common-lisp-controller for package: sbcl-1.4.0-1.el7.x86_64
--> Processing Dependency: common-lisp-controller for package: sbcl-1.4.0-1.el7.x86_64
---> Package scorep.x86_64 0:1.4.2-7.el7 will be installed
--> Processing Dependency: scorep-libs(x86-64) = 1.4.2-7.el7 for package: scorep-1.4.2-7.el7.x86_64
--> Processing Dependency: cube-devel(x86-64) >= 4.3 for package: scorep-1.4.2-7.el7.x86_64
--> Processing Dependency: otf2-devel(x86-64) >= 1.5 for package: scorep-1.4.2-7.el7.x86_64
--> Processing Dependency: binutils-devel(x86-64) for package: scorep-1.4.2-7.el7.x86_64
--> Processing Dependency: papi-devel(x86-64) for package: scorep-1.4.2-7.el7.x86_64
--> Processing Dependency: libcube4.so.7()(64bit) for package: scorep-1.4.2-7.el7.x86_64
---> Package trac.noarch 0:1.0.13-1.el7 will be installed
--> Processing Dependency: python-genshi >= 0.6 for package: trac-1.0.13-1.el7.noarch
---> Package trac-mercurial-plugin.noarch 0:1.0.0.4-1.el7 will be installed
---> Package translate-toolkit.noarch 0:1.11.0-2.el7 will be installed
--> Processing Dependency: aeidon for package: translate-toolkit-1.11.0-2.el7.noarch
--> Processing Dependency: python-BeautifulSoup for package: translate-toolkit-1.11.0-2.el7.noarch
--> Processing Dependency: python-Levenshtein for package: translate-toolkit-1.11.0-2.el7.noarch
--> Processing Dependency: python-enchant for package: translate-toolkit-1.11.0-2.el7.noarch
--> Processing Dependency: python-simplejson for package: translate-toolkit-1.11.0-2.el7.noarch
--> Processing Dependency: python-vobject for package: translate-toolkit-1.11.0-2.el7.noarch
--> Running transaction check
---> Package aeidon.noarch 0:0.19.2-5.el7 will be installed
---> Package alex.x86_64 0:3.0.5-37.el7 will be installed
--> Processing Dependency: ghc(QuickCheck-2.6-409fcc32c191cd6e04afdebb15869820) for package: alex-3.0.5-37.el7.x86_64
--> Processing Dependency: ghc(pretty-1.1.1.0-66181c695e6a2e173ba2088cf55cc396) for package: alex-3.0.5-37.el7.x86_64
--> Processing Dependency: ghc(template-haskell-2.8.0.0-a3012803fde1dc362e555b35a1a78e6d) for package: alex-3.0.5-37.el7.x86_64
--> Processing Dependency: libHSQuickCheck-2.6-ghc7.6.3.so()(64bit) for package: alex-3.0.5-37.el7.x86_64
--> Processing Dependency: libHSpretty-1.1.1.0-ghc7.6.3.so()(64bit) for package: alex-3.0.5-37.el7.x86_64
--> Processing Dependency: libHStemplate-haskell-2.8.0.0-ghc7.6.3.so()(64bit) for package: alex-3.0.5-37.el7.x86_64
---> Package binutils-devel.x86_64 0:2.27-34.base.el7 will be installed
--> Processing Dependency: zlib-devel for package: binutils-devel-2.27-34.base.el7.x86_64
---> Package cabal-install.x86_64 0:1.16.1.0-2.el7 will be installed
--> Processing Dependency: ghc(Cabal-1.16.0-eb3c12450ebbf2810048acb780cbe706) for package: cabal-install-1.16.1.0-2.el7.x86_64
--> Processing Dependency: ghc(HTTP-4000.2.8-b031f20ea7063bd37594ec79ccfb306f) for package: cabal-install-1.16.1.0-2.el7.x86_64
--> Processing Dependency: ghc(network-2.4.1.2-040cee5ece44014a8574cb3f87b1eec4) for package: cabal-install-1.16.1.0-2.el7.x86_64
--> Processing Dependency: libHSCabal-1.16.0-ghc7.6.3.so()(64bit) for package: cabal-install-1.16.1.0-2.el7.x86_64
--> Processing Dependency: libHSHTTP-4000.2.8-ghc7.6.3.so()(64bit) for package: cabal-install-1.16.1.0-2.el7.x86_64
--> Processing Dependency: libHSnetwork-2.4.1.2-ghc7.6.3.so()(64bit) for package: cabal-install-1.16.1.0-2.el7.x86_64
---> Package common-lisp-controller.noarch 0:7.4-8.el7 will be installed
--> Processing Dependency: cl-asdf for package: common-lisp-controller-7.4-8.el7.noarch
---> Package createrepo_c.x86_64 0:0.10.0-18.el7 will be installed
--> Processing Dependency: createrepo_c-libs = 0.10.0-18.el7 for package: createrepo_c-0.10.0-18.el7.x86_64
--> Processing Dependency: libcreaterepo_c.so.0()(64bit) for package: createrepo_c-0.10.0-18.el7.x86_64
---> Package cube-devel.x86_64 0:4.3.2-3.el7 will be installed
--> Processing Dependency: libgraphwidgetcommon-plugin.so.7()(64bit) for package: cube-devel-4.3.2-3.el7.x86_64
---> Package cube-libs.x86_64 0:4.3.2-3.el7 will be installed
---> Package ghc-array.x86_64 0:0.4.0.1-26.4.el7 will be installed
---> Package ghc-base.x86_64 0:4.6.0.1-26.4.el7 will be installed
---> Package ghc-binary.x86_64 0:0.5.1.1-26.4.el7 will be installed
---> Package ghc-bytestring.x86_64 0:0.10.0.2-26.4.el7 will be installed
---> Package ghc-compiler.x86_64 0:7.6.3-26.4.el7 will be installed
--> Processing Dependency: ghc-base-devel(x86-64) for package: ghc-compiler-7.6.3-26.4.el7.x86_64
---> Package ghc-containers.x86_64 0:0.5.0.0-26.4.el7 will be installed
---> Package ghc-dataenc.x86_64 0:0.14.0.5-3.el7 will be installed
---> Package ghc-deepseq.x86_64 0:1.3.0.1-26.4.el7 will be installed
---> Package ghc-directory.x86_64 0:1.2.0.1-26.4.el7 will be installed
---> Package ghc-doc-index.x86_64 0:7.6.3-26.4.el7 will be installed
---> Package ghc-extensible-exceptions.x86_64 0:0.1.1.4-13.el7 will be installed
---> Package ghc-filepath.x86_64 0:1.3.0.1-26.4.el7 will be installed
---> Package ghc-ghc-devel.x86_64 0:7.6.3-26.4.el7 will be installed
--> Processing Dependency: ghc-ghc(x86-64) = 7.6.3-26.4.el7 for package: ghc-ghc-devel-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc(bin-package-db-0.0.0.0-608dcfc9e5716ba7553bf93044c75fe2) for package: ghc-ghc-devel-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc(ghc-7.6.3-12ed9fda297e18c83fc01b7e90af0868) for package: ghc-ghc-devel-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-devel(Cabal-1.16.0-eb3c12450ebbf2810048acb780cbe706) for package: ghc-ghc-devel-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-devel(array-0.4.0.1-3b78425c10ff2dad7acf7e8c8ae014c3) for package: ghc-ghc-devel-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-devel(binary-0.5.1.1-72ed744c57c32286a49da6dda4f660b7) for package: ghc-ghc-devel-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-devel(bytestring-0.10.0.2-4f93248f75667c2c3321a7a6761b576f) for package: ghc-ghc-devel-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-devel(containers-0.5.0.0-ab1dae9a94cd3cc84e7b2805636ebfa2) for package: ghc-ghc-devel-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-devel(directory-1.2.0.1-91a788fd88acd7f149f0f10f5f1e23f2) for package: ghc-ghc-devel-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-devel(filepath-1.3.0.1-b12cbe18566fe1532a1fda4c85e31cbe) for package: ghc-ghc-devel-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-devel(hoopl-3.9.0.0-8eb345277798867f0cea79054910a0c6) for package: ghc-ghc-devel-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-devel(hpc-0.6.0.0-07911796ef7d8fbc0029c9b6917791ff) for package: ghc-ghc-devel-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-devel(process-1.1.0.2-76e05340eb66705981411022731ca84a) for package: ghc-ghc-devel-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-devel(template-haskell-2.8.0.0-a3012803fde1dc362e555b35a1a78e6d) for package: ghc-ghc-devel-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-devel(time-1.4.0.1-10dc4804a19dc0000fab79908f1a9f50) for package: ghc-ghc-devel-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-devel(unix-2.6.0.1-4f219f792083f70ec440ce406f12ce57) for package: ghc-ghc-devel-7.6.3-26.4.el7.x86_64
---> Package ghc-hashed-storage.x86_64 0:0.5.10-7.el7 will be installed
---> Package ghc-haskeline.x86_64 0:0.7.0.3-3.el7 will be installed
---> Package ghc-haskell-platform-devel.x86_64 0:2013.2.0.0-40.el7 will be installed
--> Processing Dependency: ghc-GLURaw-devel = 1.3.0.0-40.el7 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-GLUT-devel = 2.4.0.0-40.el7 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-HTTP-devel = 4000.2.8 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-HUnit-devel = 1.2.5.2 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-OpenGL-devel = 2.8.0.0-40.el7 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-OpenGLRaw-devel = 1.3.0.0-40.el7 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-QuickCheck-devel = 2.6 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-async-devel = 2.0.1.4 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-attoparsec-devel = 0.10.4.0 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-case-insensitive-devel = 1.0.0.1 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-cgi-devel = 3001.1.7.5-40.el7 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-fgl-devel = 5.4.2.4-40.el7 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-hashable-devel = 1.1.2.5 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-haskell-src-devel = 1.0.1.5-40.el7 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-html-devel = 1.0.1.2 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-mtl-devel = 2.1.2 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-network-devel = 2.4.1.2 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-parallel-devel = 3.2.0.3 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-parsec-devel = 3.1.3 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-primitive-devel = 0.5.0.1 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-random-devel = 1.0.1.1 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-regex-base-devel = 0.93.2 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-regex-compat-devel = 0.95.1 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-regex-posix-devel = 0.95.2 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-split-devel = 0.2.2 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-stm-devel = 2.4.2 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-syb-devel = 0.4.0 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-text-devel = 0.11.3.1 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-transformers-devel = 0.3.0.0 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-unordered-containers-devel = 0.2.3.0 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-vector-devel = 0.10.0.1 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-xhtml-devel = 3000.2.1-40.el7 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
--> Processing Dependency: ghc-zlib-devel = 0.5.4.1 for package: ghc-haskell-platform-devel-2013.2.0.0-40.el7.x86_64
---> Package ghc-html.x86_64 0:1.0.1.2-29.el7 will be installed
---> Package ghc-libraries.x86_64 0:7.6.3-26.4.el7 will be installed
--> Processing Dependency: ghc-deepseq-devel = 1.3.0.1-26.4.el7 for package: ghc-libraries-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-haskell2010-devel = 1.1.1.0-26.4.el7 for package: ghc-libraries-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-haskell98-devel = 2.0.0.2-26.4.el7 for package: ghc-libraries-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-old-locale-devel = 1.0.0.5-26.4.el7 for package: ghc-libraries-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-old-time-devel = 1.1.0.1-26.4.el7 for package: ghc-libraries-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc-pretty-devel = 1.1.1.0-26.4.el7 for package: ghc-libraries-7.6.3-26.4.el7.x86_64
---> Package ghc-mmap.x86_64 0:0.5.8-4.el7 will be installed
---> Package ghc-mtl.x86_64 0:2.1.2-27.el7 will be installed
---> Package ghc-old-locale.x86_64 0:1.0.0.5-26.4.el7 will be installed
---> Package ghc-old-time.x86_64 0:1.1.0.1-26.4.el7 will be installed
---> Package ghc-parsec.x86_64 0:3.1.3-31.el7 will be installed
---> Package ghc-primitive.x86_64 0:0.5.0.1-4.el7 will be installed
---> Package ghc-process.x86_64 0:1.1.0.2-26.4.el7 will be installed
---> Package ghc-random.x86_64 0:1.0.1.1-27.el7 will be installed
---> Package ghc-regex-base.x86_64 0:0.93.2-29.el7 will be installed
---> Package ghc-regex-compat.x86_64 0:0.95.1-35.el7 will be installed
---> Package ghc-regex-posix.x86_64 0:0.95.2-30.el7 will be installed
---> Package ghc-tar.x86_64 0:0.4.0.1-4.el7 will be installed
---> Package ghc-terminfo.x86_64 0:0.3.2.5-4.el7 will be installed
---> Package ghc-text.x86_64 0:0.11.3.1-2.el7 will be installed
---> Package ghc-time.x86_64 0:1.4.0.1-26.4.el7 will be installed
---> Package ghc-transformers.x86_64 0:0.3.0.0-34.el7 will be installed
---> Package ghc-unix.x86_64 0:2.6.0.1-26.4.el7 will be installed
---> Package ghc-utf8-string.x86_64 0:0.3.7-8.el7 will be installed
---> Package ghc-vector.x86_64 0:0.10.0.1-7.el7 will be installed
---> Package ghc-zlib.x86_64 0:0.5.4.1-27.el7 will be installed
---> Package happy.x86_64 0:1.18.10-35.el7 will be installed
---> Package mock-core-configs.noarch 0:31.2-1.el7 will be installed
--> Processing Dependency: distribution-gpg-keys >= 1.29 for package: mock-core-configs-31.2-1.el7.noarch
---> Package ocaml-runtime.x86_64 0:4.05.0-6.el7 will be installed
--> Processing Dependency: ocaml(Longident) = e15e9be830b55a219eb87c150ff382fe for package: ocaml-runtime-4.05.0-6.el7.x86_64
---> Package ocaml-srpm-macros.noarch 0:5-2.el7 will be installed
---> Package otf2-devel.x86_64 0:1.5.1-1.el7 will be installed
--> Processing Dependency: otf2(x86-64) = 1.5.1-1.el7 for package: otf2-devel-1.5.1-1.el7.x86_64
--> Processing Dependency: libotf2.so.5()(64bit) for package: otf2-devel-1.5.1-1.el7.x86_64
---> Package papi-devel.x86_64 0:5.2.0-26.el7 will be installed
--> Processing Dependency: papi = 5.2.0-26.el7 for package: papi-devel-5.2.0-26.el7.x86_64
--> Processing Dependency: libpapi.so.5.2.0.0()(64bit) for package: papi-devel-5.2.0-26.el7.x86_64
---> Package pigz.x86_64 0:2.3.4-1.el7 will be installed
---> Package python-BeautifulSoup.noarch 1:3.2.1-7.el7 will be installed
---> Package python-Levenshtein.x86_64 0:0.10.1-19.el7 will be installed
---> Package python-enchant.noarch 0:1.6.5-14.el7 will be installed
--> Processing Dependency: enchant >= 1.5.0 for package: python-enchant-1.6.5-14.el7.noarch
---> Package python-genshi.x86_64 0:0.7-3.el7 will be installed
---> Package python-vobject.noarch 0:0.8.1c-8.el7 will be installed
--> Processing Dependency: python-dateutil for package: python-vobject-0.8.1c-8.el7.noarch
---> Package python2-simplejson.x86_64 0:3.10.0-2.el7 will be installed
---> Package python36.x86_64 0:3.6.8-1.el7 will be installed
--> Processing Dependency: python36-libs(x86-64) = 3.6.8-1.el7 for package: python36-3.6.8-1.el7.x86_64
--> Processing Dependency: libpython3.6m.so.1.0()(64bit) for package: python36-3.6.8-1.el7.x86_64
---> Package python36-distro.noarch 0:1.2.0-3.el7 will be installed
---> Package python36-jinja2.noarch 0:2.8.1-2.el7 will be installed
--> Processing Dependency: python36-markupsafe for package: python36-jinja2-2.8.1-2.el7.noarch
--> Processing Dependency: python36-setuptools for package: python36-jinja2-2.8.1-2.el7.noarch
---> Package python36-pyroute2.noarch 0:0.4.13-2.el7 will be installed
---> Package python36-requests.noarch 0:2.12.5-3.el7 will be installed
--> Processing Dependency: python36-urllib3 = 1.19.1 for package: python36-requests-2.12.5-3.el7.noarch
--> Processing Dependency: python36-chardet for package: python36-requests-2.12.5-3.el7.noarch
--> Processing Dependency: python36-idna for package: python36-requests-2.12.5-3.el7.noarch
---> Package python36-rpm.x86_64 0:4.11.3-4.el7 will be installed
---> Package python36-six.noarch 0:1.11.0-3.el7 will be installed
---> Package qt5-qtbase.x86_64 0:5.9.2-3.el7 will be installed
--> Processing Dependency: qt5-qtbase-common = 5.9.2-3.el7 for package: qt5-qtbase-5.9.2-3.el7.x86_64
--> Processing Dependency: libpcre2-16.so.0()(64bit) for package: qt5-qtbase-5.9.2-3.el7.x86_64
---> Package qt5-qtbase-gui.x86_64 0:5.9.2-3.el7 will be installed
--> Processing Dependency: glx-utils for package: qt5-qtbase-gui-5.9.2-3.el7.x86_64
--> Processing Dependency: libxcb-render-util.so.0()(64bit) for package: qt5-qtbase-gui-5.9.2-3.el7.x86_64
--> Processing Dependency: libxcb-keysyms.so.1()(64bit) for package: qt5-qtbase-gui-5.9.2-3.el7.x86_64
--> Processing Dependency: libxcb-image.so.0()(64bit) for package: qt5-qtbase-gui-5.9.2-3.el7.x86_64
--> Processing Dependency: libxcb-icccm.so.4()(64bit) for package: qt5-qtbase-gui-5.9.2-3.el7.x86_64
---> Package scorep-libs.x86_64 0:1.4.2-7.el7 will be installed
---> Package usermode.x86_64 0:1.111-5.el7 will be installed
---> Package yum-utils.noarch 0:1.1.31-50.el7 will be installed
--> Processing Dependency: python-kitchen for package: yum-utils-1.1.31-50.el7.noarch
--> Running transaction check
---> Package cl-asdf.noarch 0:20101028-8.el7 will be installed
---> Package createrepo_c-libs.x86_64 0:0.10.0-18.el7 will be installed
---> Package cube.x86_64 0:4.3.2-3.el7 will be installed
--> Processing Dependency: libQtCore.so.4()(64bit) for package: cube-4.3.2-3.el7.x86_64
--> Processing Dependency: libQtGui.so.4()(64bit) for package: cube-4.3.2-3.el7.x86_64
--> Processing Dependency: libQtNetwork.so.4()(64bit) for package: cube-4.3.2-3.el7.x86_64
---> Package distribution-gpg-keys.noarch 0:1.34-1.el7 will be installed
---> Package enchant.x86_64 1:1.6.0-8.el7 will be installed
---> Package ghc-Cabal.x86_64 0:1.16.0-26.4.el7 will be installed
---> Package ghc-Cabal-devel.x86_64 0:1.16.0-26.4.el7 will be installed
---> Package ghc-GLURaw-devel.x86_64 0:1.3.0.0-40.el7 will be installed
--> Processing Dependency: ghc-GLURaw(x86-64) = 1.3.0.0-40.el7 for package: ghc-GLURaw-devel-1.3.0.0-40.el7.x86_64
--> Processing Dependency: ghc(GLURaw-1.3.0.0-9f9cff3389f6d8279f59fe5470761fa9) for package: ghc-GLURaw-devel-1.3.0.0-40.el7.x86_64
--> Processing Dependency: mesa-libGLU-devel(x86-64) for package: ghc-GLURaw-devel-1.3.0.0-40.el7.x86_64
---> Package ghc-GLUT-devel.x86_64 0:2.4.0.0-40.el7 will be installed
--> Processing Dependency: ghc-GLUT(x86-64) = 2.4.0.0-40.el7 for package: ghc-GLUT-devel-2.4.0.0-40.el7.x86_64
--> Processing Dependency: freeglut-devel(x86-64) for package: ghc-GLUT-devel-2.4.0.0-40.el7.x86_64
--> Processing Dependency: ghc(GLUT-2.4.0.0-31a913db9728fc0bba038e31af3ad274) for package: ghc-GLUT-devel-2.4.0.0-40.el7.x86_64
---> Package ghc-HTTP.x86_64 0:4000.2.8-33.el7 will be installed
---> Package ghc-HTTP-devel.x86_64 0:4000.2.8-33.el7 will be installed
---> Package ghc-HUnit-devel.x86_64 0:1.2.5.2-32.el7 will be installed
--> Processing Dependency: ghc-HUnit(x86-64) = 1.2.5.2-32.el7 for package: ghc-HUnit-devel-1.2.5.2-32.el7.x86_64
--> Processing Dependency: ghc(HUnit-1.2.5.2-6e02ecc15e3cc5ab8ef10df50d05a1a9) for package: ghc-HUnit-devel-1.2.5.2-32.el7.x86_64
---> Package ghc-OpenGL-devel.x86_64 0:2.8.0.0-40.el7 will be installed
--> Processing Dependency: ghc-OpenGL(x86-64) = 2.8.0.0-40.el7 for package: ghc-OpenGL-devel-2.8.0.0-40.el7.x86_64
--> Processing Dependency: ghc(OpenGL-2.8.0.0-344e8603ffa2fe942e6526830661f0ee) for package: ghc-OpenGL-devel-2.8.0.0-40.el7.x86_64
---> Package ghc-OpenGLRaw-devel.x86_64 0:1.3.0.0-40.el7 will be installed
--> Processing Dependency: ghc-OpenGLRaw(x86-64) = 1.3.0.0-40.el7 for package: ghc-OpenGLRaw-devel-1.3.0.0-40.el7.x86_64
--> Processing Dependency: ghc(OpenGLRaw-1.3.0.0-3fbff47a4ddc1013a8c98f1c46bbcf28) for package: ghc-OpenGLRaw-devel-1.3.0.0-40.el7.x86_64
--> Processing Dependency: mesa-libGL-devel(x86-64) for package: ghc-OpenGLRaw-devel-1.3.0.0-40.el7.x86_64
---> Package ghc-QuickCheck.x86_64 0:2.6-33.el7 will be installed
---> Package ghc-QuickCheck-devel.x86_64 0:2.6-33.el7 will be installed
---> Package ghc-array-devel.x86_64 0:0.4.0.1-26.4.el7 will be installed
---> Package ghc-async-devel.x86_64 0:2.0.1.4-30.el7 will be installed
--> Processing Dependency: ghc-async(x86-64) = 2.0.1.4-30.el7 for package: ghc-async-devel-2.0.1.4-30.el7.x86_64
--> Processing Dependency: ghc(async-2.0.1.4-3eae4a440b34cbf08aad8765dbd61d40) for package: ghc-async-devel-2.0.1.4-30.el7.x86_64
---> Package ghc-attoparsec-devel.x86_64 0:0.10.4.0-2.el7 will be installed
--> Processing Dependency: ghc-attoparsec = 0.10.4.0-2.el7 for package: ghc-attoparsec-devel-0.10.4.0-2.el7.x86_64
--> Processing Dependency: ghc(attoparsec-0.10.4.0-d9fd97cfc1a1748b3cde35adf7fd233b) for package: ghc-attoparsec-devel-0.10.4.0-2.el7.x86_64
---> Package ghc-base-devel.x86_64 0:4.6.0.1-26.4.el7 will be installed
--> Processing Dependency: gmp-devel(x86-64) for package: ghc-base-devel-4.6.0.1-26.4.el7.x86_64
--> Processing Dependency: libffi-devel(x86-64) for package: ghc-base-devel-4.6.0.1-26.4.el7.x86_64
---> Package ghc-binary-devel.x86_64 0:0.5.1.1-26.4.el7 will be installed
---> Package ghc-bytestring-devel.x86_64 0:0.10.0.2-26.4.el7 will be installed
---> Package ghc-case-insensitive-devel.x86_64 0:1.0.0.1-2.el7 will be installed
--> Processing Dependency: ghc-case-insensitive = 1.0.0.1-2.el7 for package: ghc-case-insensitive-devel-1.0.0.1-2.el7.x86_64
--> Processing Dependency: ghc(case-insensitive-1.0.0.1-833d4438033d68efab76284bff7688c9) for package: ghc-case-insensitive-devel-1.0.0.1-2.el7.x86_64
---> Package ghc-cgi-devel.x86_64 0:3001.1.7.5-40.el7 will be installed
--> Processing Dependency: ghc-cgi(x86-64) = 3001.1.7.5-40.el7 for package: ghc-cgi-devel-3001.1.7.5-40.el7.x86_64
--> Processing Dependency: ghc(cgi-3001.1.7.5-d915a415979d1eb94c64bcc671eccaf8) for package: ghc-cgi-devel-3001.1.7.5-40.el7.x86_64
---> Package ghc-containers-devel.x86_64 0:0.5.0.0-26.4.el7 will be installed
---> Package ghc-deepseq-devel.x86_64 0:1.3.0.1-26.4.el7 will be installed
---> Package ghc-directory-devel.x86_64 0:1.2.0.1-26.4.el7 will be installed
---> Package ghc-fgl-devel.x86_64 0:5.4.2.4-40.el7 will be installed
--> Processing Dependency: ghc-fgl(x86-64) = 5.4.2.4-40.el7 for package: ghc-fgl-devel-5.4.2.4-40.el7.x86_64
--> Processing Dependency: ghc(fgl-5.4.2.4-159de3ef3895c423f9edfbf625c737e9) for package: ghc-fgl-devel-5.4.2.4-40.el7.x86_64
---> Package ghc-filepath-devel.x86_64 0:1.3.0.1-26.4.el7 will be installed
---> Package ghc-ghc.x86_64 0:7.6.3-26.4.el7 will be installed
--> Processing Dependency: ghc(hoopl-3.9.0.0-8eb345277798867f0cea79054910a0c6) for package: ghc-ghc-7.6.3-26.4.el7.x86_64
--> Processing Dependency: ghc(hpc-0.6.0.0-07911796ef7d8fbc0029c9b6917791ff) for package: ghc-ghc-7.6.3-26.4.el7.x86_64
--> Processing Dependency: libHShoopl-3.9.0.0-ghc7.6.3.so()(64bit) for package: ghc-ghc-7.6.3-26.4.el7.x86_64
--> Processing Dependency: libHShpc-0.6.0.0-ghc7.6.3.so()(64bit) for package: ghc-ghc-7.6.3-26.4.el7.x86_64
---> Package ghc-hashable-devel.x86_64 0:1.1.2.5-4.el7 will be installed
--> Processing Dependency: ghc-hashable = 1.1.2.5-4.el7 for package: ghc-hashable-devel-1.1.2.5-4.el7.x86_64
--> Processing Dependency: ghc(hashable-1.1.2.5-e0f2541518f84d3123a819112b4ffe20) for package: ghc-hashable-devel-1.1.2.5-4.el7.x86_64
---> Package ghc-haskell-src-devel.x86_64 0:1.0.1.5-40.el7 will be installed
--> Processing Dependency: ghc-haskell-src(x86-64) = 1.0.1.5-40.el7 for package: ghc-haskell-src-devel-1.0.1.5-40.el7.x86_64
--> Processing Dependency: ghc(haskell-src-1.0.1.5-5158962fe58b880522089767d55a9906) for package: ghc-haskell-src-devel-1.0.1.5-40.el7.x86_64
---> Package ghc-haskell2010-devel.x86_64 0:1.1.1.0-26.4.el7 will be installed
--> Processing Dependency: ghc-haskell2010(x86-64) = 1.1.1.0-26.4.el7 for package: ghc-haskell2010-devel-1.1.1.0-26.4.el7.x86_64
--> Processing Dependency: ghc(haskell2010-1.1.1.0-4b5d2868e52139568824197d50d128cb) for package: ghc-haskell2010-devel-1.1.1.0-26.4.el7.x86_64
---> Package ghc-haskell98-devel.x86_64 0:2.0.0.2-26.4.el7 will be installed
--> Processing Dependency: ghc-haskell98(x86-64) = 2.0.0.2-26.4.el7 for package: ghc-haskell98-devel-2.0.0.2-26.4.el7.x86_64
--> Processing Dependency: ghc(haskell98-2.0.0.2-2688f996902a8dab85879e8da10e86be) for package: ghc-haskell98-devel-2.0.0.2-26.4.el7.x86_64
---> Package ghc-hoopl-devel.x86_64 0:3.9.0.0-26.4.el7 will be installed
---> Package ghc-hpc-devel.x86_64 0:0.6.0.0-26.4.el7 will be installed
---> Package ghc-html-devel.x86_64 0:1.0.1.2-29.el7 will be installed
---> Package ghc-mtl-devel.x86_64 0:2.1.2-27.el7 will be installed
---> Package ghc-network.x86_64 0:2.4.1.2-32.el7 will be installed
---> Package ghc-network-devel.x86_64 0:2.4.1.2-32.el7 will be installed
---> Package ghc-old-locale-devel.x86_64 0:1.0.0.5-26.4.el7 will be installed
---> Package ghc-old-time-devel.x86_64 0:1.1.0.1-26.4.el7 will be installed
---> Package ghc-parallel-devel.x86_64 0:3.2.0.3-35.el7 will be installed
--> Processing Dependency: ghc-parallel(x86-64) = 3.2.0.3-35.el7 for package: ghc-parallel-devel-3.2.0.3-35.el7.x86_64
--> Processing Dependency: ghc(parallel-3.2.0.3-d6c020cb3aa15c71f5f29c0db359fd39) for package: ghc-parallel-devel-3.2.0.3-35.el7.x86_64
---> Package ghc-parsec-devel.x86_64 0:3.1.3-31.el7 will be installed
---> Package ghc-pretty.x86_64 0:1.1.1.0-26.4.el7 will be installed
---> Package ghc-pretty-devel.x86_64 0:1.1.1.0-26.4.el7 will be installed
---> Package ghc-primitive-devel.x86_64 0:0.5.0.1-4.el7 will be installed
---> Package ghc-process-devel.x86_64 0:1.1.0.2-26.4.el7 will be installed
---> Package ghc-random-devel.x86_64 0:1.0.1.1-27.el7 will be installed
---> Package ghc-regex-base-devel.x86_64 0:0.93.2-29.el7 will be installed
---> Package ghc-regex-compat-devel.x86_64 0:0.95.1-35.el7 will be installed
---> Package ghc-regex-posix-devel.x86_64 0:0.95.2-30.el7 will be installed
---> Package ghc-split-devel.x86_64 0:0.2.2-2.el7 will be installed
--> Processing Dependency: ghc-split = 0.2.2-2.el7 for package: ghc-split-devel-0.2.2-2.el7.x86_64
--> Processing Dependency: ghc(split-0.2.2-9ce33138f4fcfb9c37f6e6c300bcc367) for package: ghc-split-devel-0.2.2-2.el7.x86_64
---> Package ghc-stm-devel.x86_64 0:2.4.2-26.el7 will be installed
--> Processing Dependency: ghc-stm(x86-64) = 2.4.2-26.el7 for package: ghc-stm-devel-2.4.2-26.el7.x86_64
--> Processing Dependency: ghc(stm-2.4.2-b5d718b1a5f1fbcdb61a336aef0c2130) for package: ghc-stm-devel-2.4.2-26.el7.x86_64
---> Package ghc-syb-devel.x86_64 0:0.4.0-35.el7 will be installed
--> Processing Dependency: ghc-syb(x86-64) = 0.4.0-35.el7 for package: ghc-syb-devel-0.4.0-35.el7.x86_64
--> Processing Dependency: ghc(syb-0.4.0-c48d52f3188b986ddaa9dd9ae40072f8) for package: ghc-syb-devel-0.4.0-35.el7.x86_64
---> Package ghc-template-haskell.x86_64 0:2.8.0.0-26.4.el7 will be installed
---> Package ghc-template-haskell-devel.x86_64 0:2.8.0.0-26.4.el7 will be installed
---> Package ghc-text-devel.x86_64 0:0.11.3.1-2.el7 will be installed
---> Package ghc-time-devel.x86_64 0:1.4.0.1-26.4.el7 will be installed
---> Package ghc-transformers-devel.x86_64 0:0.3.0.0-34.el7 will be installed
---> Package ghc-unix-devel.x86_64 0:2.6.0.1-26.4.el7 will be installed
---> Package ghc-unordered-containers-devel.x86_64 0:0.2.3.0-3.el7 will be installed
--> Processing Dependency: ghc-unordered-containers = 0.2.3.0-3.el7 for package: ghc-unordered-containers-devel-0.2.3.0-3.el7.x86_64
--> Processing Dependency: ghc(unordered-containers-0.2.3.0-c7952fe8bed178bdf8ed4d090730c9da) for package: ghc-unordered-containers-devel-0.2.3.0-3.el7.x86_64
---> Package ghc-vector-devel.x86_64 0:0.10.0.1-7.el7 will be installed
---> Package ghc-xhtml-devel.x86_64 0:3000.2.1-40.el7 will be installed
--> Processing Dependency: ghc-xhtml(x86-64) = 3000.2.1-40.el7 for package: ghc-xhtml-devel-3000.2.1-40.el7.x86_64
--> Processing Dependency: ghc(xhtml-3000.2.1-22b747149ac820f9574f57533a3d58fc) for package: ghc-xhtml-devel-3000.2.1-40.el7.x86_64
---> Package ghc-zlib-devel.x86_64 0:0.5.4.1-27.el7 will be installed
---> Package glx-utils.x86_64 0:8.3.0-10.el7 will be installed
---> Package ocaml-compiler-libs.x86_64 0:4.05.0-6.el7 will be installed
---> Package otf2.x86_64 0:1.5.1-1.el7 will be installed
--> Processing Dependency: python-jinja2 for package: otf2-1.5.1-1.el7.x86_64
---> Package papi.x86_64 0:5.2.0-26.el7 will be installed
--> Processing Dependency: libsensors.so.4()(64bit) for package: papi-5.2.0-26.el7.x86_64
--> Processing Dependency: libpfm.so.4()(64bit) for package: papi-5.2.0-26.el7.x86_64
---> Package pcre2-utf16.x86_64 0:10.23-2.el7 will be installed
---> Package python-dateutil.noarch 0:1.5-7.el7 will be installed
---> Package python-kitchen.noarch 0:1.1.1-5.el7 will be installed
---> Package python36-chardet.noarch 0:3.0.4-1.el7 will be installed
---> Package python36-idna.noarch 0:2.7-2.el7 will be installed
---> Package python36-libs.x86_64 0:3.6.8-1.el7 will be installed
---> Package python36-markupsafe.x86_64 0:0.23-3.el7 will be installed
---> Package python36-setuptools.noarch 0:39.2.0-3.el7 will be installed
---> Package python36-urllib3.noarch 0:1.19.1-5.el7 will be installed
--> Processing Dependency: python36-pysocks for package: python36-urllib3-1.19.1-5.el7.noarch
---> Package qt5-qtbase-common.noarch 0:5.9.2-3.el7 will be installed
---> Package xcb-util-image.x86_64 0:0.4.0-2.el7 will be installed
---> Package xcb-util-keysyms.x86_64 0:0.4.0-1.el7 will be installed
---> Package xcb-util-renderutil.x86_64 0:0.3.9-3.el7 will be installed
---> Package xcb-util-wm.x86_64 0:0.4.1-5.el7 will be installed
---> Package zlib-devel.x86_64 0:1.2.7-18.el7 will be installed
--> Running transaction check
---> Package freeglut-devel.x86_64 0:3.0.0-8.el7 will be installed
--> Processing Dependency: freeglut = 3.0.0-8.el7 for package: freeglut-devel-3.0.0-8.el7.x86_64
--> Processing Dependency: libglut.so.3()(64bit) for package: freeglut-devel-3.0.0-8.el7.x86_64
---> Package ghc-GLURaw.x86_64 0:1.3.0.0-40.el7 will be installed
--> Processing Dependency: libGLU.so.1()(64bit) for package: ghc-GLURaw-1.3.0.0-40.el7.x86_64
---> Package ghc-GLUT.x86_64 0:2.4.0.0-40.el7 will be installed
---> Package ghc-HUnit.x86_64 0:1.2.5.2-32.el7 will be installed
---> Package ghc-OpenGL.x86_64 0:2.8.0.0-40.el7 will be installed
---> Package ghc-OpenGLRaw.x86_64 0:1.3.0.0-40.el7 will be installed
---> Package ghc-async.x86_64 0:2.0.1.4-30.el7 will be installed
---> Package ghc-attoparsec.x86_64 0:0.10.4.0-2.el7 will be installed
---> Package ghc-case-insensitive.x86_64 0:1.0.0.1-2.el7 will be installed
---> Package ghc-cgi.x86_64 0:3001.1.7.5-40.el7 will be installed
---> Package ghc-fgl.x86_64 0:5.4.2.4-40.el7 will be installed
---> Package ghc-hashable.x86_64 0:1.1.2.5-4.el7 will be installed
---> Package ghc-haskell-src.x86_64 0:1.0.1.5-40.el7 will be installed
---> Package ghc-haskell2010.x86_64 0:1.1.1.0-26.4.el7 will be installed
---> Package ghc-haskell98.x86_64 0:2.0.0.2-26.4.el7 will be installed
---> Package ghc-hoopl.x86_64 0:3.9.0.0-26.4.el7 will be installed
---> Package ghc-hpc.x86_64 0:0.6.0.0-26.4.el7 will be installed
---> Package ghc-parallel.x86_64 0:3.2.0.3-35.el7 will be installed
---> Package ghc-split.x86_64 0:0.2.2-2.el7 will be installed
---> Package ghc-stm.x86_64 0:2.4.2-26.el7 will be installed
---> Package ghc-syb.x86_64 0:0.4.0-35.el7 will be installed
---> Package ghc-unordered-containers.x86_64 0:0.2.3.0-3.el7 will be installed
---> Package ghc-xhtml.x86_64 0:3000.2.1-40.el7 will be installed
---> Package gmp-devel.x86_64 1:6.0.0-15.el7 will be installed
---> Package libffi-devel.x86_64 0:3.0.13-18.el7 will be installed
---> Package libpfm.x86_64 0:4.7.0-10.el7 will be installed
---> Package lm_sensors-libs.x86_64 0:3.4.0-6.20160601gitf9185e5.el7 will be installed
---> Package mesa-libGL-devel.x86_64 0:18.0.5-4.el7_6 will be installed
--> Processing Dependency: mesa-libGL = 18.0.5-4.el7_6 for package: mesa-libGL-devel-18.0.5-4.el7_6.x86_64
--> Processing Dependency: pkgconfig(xdamage) >= 1.1 for package: mesa-libGL-devel-18.0.5-4.el7_6.x86_64
--> Processing Dependency: pkgconfig(xcb-glx) >= 1.8.1 for package: mesa-libGL-devel-18.0.5-4.el7_6.x86_64
--> Processing Dependency: pkgconfig(xcb-dri2) >= 1.8 for package: mesa-libGL-devel-18.0.5-4.el7_6.x86_64
--> Processing Dependency: pkgconfig(libdrm) >= 2.4.75 for package: mesa-libGL-devel-18.0.5-4.el7_6.x86_64
--> Processing Dependency: pkgconfig(xxf86vm) for package: mesa-libGL-devel-18.0.5-4.el7_6.x86_64
--> Processing Dependency: pkgconfig(xfixes) for package: mesa-libGL-devel-18.0.5-4.el7_6.x86_64
--> Processing Dependency: pkgconfig(xext) for package: mesa-libGL-devel-18.0.5-4.el7_6.x86_64
--> Processing Dependency: pkgconfig(xcb) for package: mesa-libGL-devel-18.0.5-4.el7_6.x86_64
--> Processing Dependency: pkgconfig(x11-xcb) for package: mesa-libGL-devel-18.0.5-4.el7_6.x86_64
--> Processing Dependency: pkgconfig(x11) for package: mesa-libGL-devel-18.0.5-4.el7_6.x86_64
--> Processing Dependency: libglvnd-devel(x86-64) for package: mesa-libGL-devel-18.0.5-4.el7_6.x86_64
--> Processing Dependency: gl-manpages for package: mesa-libGL-devel-18.0.5-4.el7_6.x86_64
---> Package mesa-libGLU-devel.x86_64 0:9.0.0-4.el7 will be installed
---> Package python-jinja2.noarch 0:2.7.2-3.el7_6 will be installed
--> Processing Dependency: python-markupsafe for package: python-jinja2-2.7.2-3.el7_6.noarch
---> Package python36-pysocks.noarch 0:1.6.8-6.el7 will be installed
---> Package qt.x86_64 1:4.8.7-3.el7_6 will be installed
--> Processing Dependency: qt-settings for package: 1:qt-4.8.7-3.el7_6.x86_64
---> Package qt-x11.x86_64 1:4.8.7-3.el7_6 will be installed
--> Processing Dependency: libmng.so.1()(64bit) for package: 1:qt-x11-4.8.7-3.el7_6.x86_64
--> Running transaction check
---> Package freeglut.x86_64 0:3.0.0-8.el7 will be installed
---> Package gl-manpages.noarch 0:1.1-7.20130122.el7 will be installed
---> Package libX11-devel.x86_64 0:1.6.5-2.el7 will be installed
--> Processing Dependency: pkgconfig(xproto) for package: libX11-devel-1.6.5-2.el7.x86_64
--> Processing Dependency: pkgconfig(kbproto) for package: libX11-devel-1.6.5-2.el7.x86_64
---> Package libXdamage-devel.x86_64 0:1.1.4-4.1.el7 will be installed
---> Package libXext-devel.x86_64 0:1.3.3-3.el7 will be installed
---> Package libXfixes-devel.x86_64 0:5.0.3-1.el7 will be installed
---> Package libXxf86vm-devel.x86_64 0:1.1.4-1.el7 will be installed
---> Package libdrm-devel.x86_64 0:2.4.91-3.el7 will be installed
---> Package libglvnd-devel.x86_64 1:1.0.1-0.8.git5baa1e5.el7 will be installed
--> Processing Dependency: libglvnd-opengl(x86-64) = 1:1.0.1-0.8.git5baa1e5.el7 for package: 1:libglvnd-devel-1.0.1-0.8.git5baa1e5.el7.x86_64
--> Processing Dependency: libglvnd-gles(x86-64) = 1:1.0.1-0.8.git5baa1e5.el7 for package: 1:libglvnd-devel-1.0.1-0.8.git5baa1e5.el7.x86_64
--> Processing Dependency: libglvnd-core-devel(x86-64) = 1:1.0.1-0.8.git5baa1e5.el7 for package: 1:libglvnd-devel-1.0.1-0.8.git5baa1e5.el7.x86_64
--> Processing Dependency: libOpenGL.so.0()(64bit) for package: 1:libglvnd-devel-1.0.1-0.8.git5baa1e5.el7.x86_64
--> Processing Dependency: libGLESv2.so.2()(64bit) for package: 1:libglvnd-devel-1.0.1-0.8.git5baa1e5.el7.x86_64
--> Processing Dependency: libGLESv1_CM.so.1()(64bit) for package: 1:libglvnd-devel-1.0.1-0.8.git5baa1e5.el7.x86_64
---> Package libmng.x86_64 0:1.0.10-14.el7 will be installed
---> Package libxcb-devel.x86_64 0:1.13-1.el7 will be installed
--> Processing Dependency: pkgconfig(xau) >= 0.99.2 for package: libxcb-devel-1.13-1.el7.x86_64
---> Package mesa-libGL.x86_64 0:18.0.5-3.el7 will be updated
---> Package mesa-libGL.x86_64 0:18.0.5-4.el7_6 will be an update
--> Processing Dependency: mesa-libglapi = 18.0.5-4.el7_6 for package: mesa-libGL-18.0.5-4.el7_6.x86_64
---> Package mesa-libGLU.x86_64 0:9.0.0-4.el7 will be installed
---> Package python-markupsafe.x86_64 0:0.11-10.el7 will be installed
---> Package qt-settings.noarch 0:19-23.8.el7.centos will be installed
--> Running transaction check
---> Package libXau-devel.x86_64 0:1.0.8-2.1.el7 will be installed
---> Package libglvnd-core-devel.x86_64 1:1.0.1-0.8.git5baa1e5.el7 will be installed
---> Package libglvnd-gles.x86_64 1:1.0.1-0.8.git5baa1e5.el7 will be installed
---> Package libglvnd-opengl.x86_64 1:1.0.1-0.8.git5baa1e5.el7 will be installed
---> Package mesa-libglapi.x86_64 0:18.0.5-3.el7 will be updated
--> Processing Dependency: mesa-libglapi = 18.0.5-3.el7 for package: mesa-libgbm-18.0.5-3.el7.x86_64
---> Package mesa-libglapi.x86_64 0:18.0.5-4.el7_6 will be an update
---> Package xorg-x11-proto-devel.noarch 0:2018.4-1.el7 will be installed
--> Running transaction check
---> Package mesa-libgbm.x86_64 0:18.0.5-3.el7 will be updated
--> Processing Dependency: mesa-libgbm = 18.0.5-3.el7 for package: mesa-libEGL-18.0.5-3.el7.x86_64
---> Package mesa-libgbm.x86_64 0:18.0.5-4.el7_6 will be an update
--> Running transaction check
---> Package mesa-libEGL.x86_64 0:18.0.5-3.el7 will be updated
---> Package mesa-libEGL.x86_64 0:18.0.5-4.el7_6 will be an update
--> Finished Dependency Resolution
Dependencies Resolved
=====================================================================================================================================================================================
Package Arch Version Repository Size
=====================================================================================================================================================================================
Installing for group upgrade "Development Tools":
ccache x86_64 3.3.4-1.el7 epel 211 k
colordiff noarch 1.0.13-2.el7 epel 26 k
cvsps x86_64 2.2-0.14.b1.el7 base 58 k
darcs x86_64 2.8.4-4.el7 epel 1.1 M
ghc x86_64 7.6.3-26.4.el7 epel 36 k
haskell-platform x86_64 2013.2.0.0-40.el7 epel 13 k
mock noarch 1.4.16-1.el7 epel 173 k
ocaml x86_64 4.05.0-6.el7 base 26 M
qgit x86_64 2.8-2.el7 epel 404 k
sbcl x86_64 1.4.0-1.el7 epel 16 M
scorep x86_64 1.4.2-7.el7 epel 288 k
trac noarch 1.0.13-1.el7 epel 2.3 M
trac-mercurial-plugin noarch 1.0.0.4-1.el7 epel 50 k
translate-toolkit noarch 1.11.0-2.el7 epel 1.4 M
Installing for dependencies:
aeidon noarch 0.19.2-5.el7 epel 266 k
alex x86_64 3.0.5-37.el7 epel 152 k
binutils-devel x86_64 2.27-34.base.el7 base 878 k
cabal-install x86_64 1.16.1.0-2.el7 epel 453 k
cl-asdf noarch 20101028-8.el7 epel 91 k
common-lisp-controller noarch 7.4-8.el7 epel 21 k
createrepo_c x86_64 0.10.0-18.el7 extras 65 k
createrepo_c-libs x86_64 0.10.0-18.el7 extras 89 k
cube x86_64 4.3.2-3.el7 epel 1.1 M
cube-devel x86_64 4.3.2-3.el7 epel 180 k
cube-libs x86_64 4.3.2-3.el7 epel 1.1 M
distribution-gpg-keys noarch 1.34-1.el7 epel 215 k
enchant x86_64 1:1.6.0-8.el7 base 55 k
freeglut x86_64 3.0.0-8.el7 base 185 k
freeglut-devel x86_64 3.0.0-8.el7 base 116 k
ghc-Cabal x86_64 1.16.0-26.4.el7 epel 1.0 M
ghc-Cabal-devel x86_64 1.16.0-26.4.el7 epel 6.6 M
ghc-GLURaw x86_64 1.3.0.0-40.el7 epel 45 k
ghc-GLURaw-devel x86_64 1.3.0.0-40.el7 epel 172 k
ghc-GLUT x86_64 2.4.0.0-40.el7 epel 191 k
ghc-GLUT-devel x86_64 2.4.0.0-40.el7 epel 947 k
ghc-HTTP x86_64 4000.2.8-33.el7 epel 163 k
ghc-HTTP-devel x86_64 4000.2.8-33.el7 epel 778 k
ghc-HUnit x86_64 1.2.5.2-32.el7 epel 32 k
ghc-HUnit-devel x86_64 1.2.5.2-32.el7 epel 156 k
ghc-OpenGL x86_64 2.8.0.0-40.el7 epel 674 k
ghc-OpenGL-devel x86_64 2.8.0.0-40.el7 epel 3.2 M
ghc-OpenGLRaw x86_64 1.3.0.0-40.el7 epel 424 k
ghc-OpenGLRaw-devel x86_64 1.3.0.0-40.el7 epel 2.2 M
ghc-QuickCheck x86_64 2.6-33.el7 epel 160 k
ghc-QuickCheck-devel x86_64 2.6-33.el7 epel 733 k
ghc-array x86_64 0.4.0.1-26.4.el7 epel 113 k
ghc-array-devel x86_64 0.4.0.1-26.4.el7 epel 551 k
ghc-async x86_64 2.0.1.4-30.el7 epel 21 k
ghc-async-devel x86_64 2.0.1.4-30.el7 epel 101 k
ghc-attoparsec x86_64 0.10.4.0-2.el7 epel 200 k
ghc-attoparsec-devel x86_64 0.10.4.0-2.el7 epel 910 k
ghc-base x86_64 4.6.0.1-26.4.el7 epel 1.6 M
ghc-base-devel x86_64 4.6.0.1-26.4.el7 epel 8.7 M
ghc-binary x86_64 0.5.1.1-26.4.el7 epel 94 k
ghc-binary-devel x86_64 0.5.1.1-26.4.el7 epel 392 k
ghc-bytestring x86_64 0.10.0.2-26.4.el7 epel 182 k
ghc-bytestring-devel x86_64 0.10.0.2-26.4.el7 epel 1.1 M
ghc-case-insensitive x86_64 1.0.0.1-2.el7 epel 22 k
ghc-case-insensitive-devel x86_64 1.0.0.1-2.el7 epel 78 k
ghc-cgi x86_64 3001.1.7.5-40.el7 epel 109 k
ghc-cgi-devel x86_64 3001.1.7.5-40.el7 epel 478 k
ghc-compiler x86_64 7.6.3-26.4.el7 epel 11 M
ghc-containers x86_64 0.5.0.0-26.4.el7 epel 287 k
ghc-containers-devel x86_64 0.5.0.0-26.4.el7 epel 1.7 M
ghc-dataenc x86_64 0.14.0.5-3.el7 epel 54 k
ghc-deepseq x86_64 1.3.0.1-26.4.el7 epel 45 k
ghc-deepseq-devel x86_64 1.3.0.1-26.4.el7 epel 93 k
ghc-directory x86_64 1.2.0.1-26.4.el7 epel 59 k
ghc-directory-devel x86_64 1.2.0.1-26.4.el7 epel 185 k
ghc-doc-index x86_64 7.6.3-26.4.el7 epel 36 k
ghc-extensible-exceptions x86_64 0.1.1.4-13.el7 epel 7.5 k
ghc-fgl x86_64 5.4.2.4-40.el7 epel 139 k
ghc-fgl-devel x86_64 5.4.2.4-40.el7 epel 663 k
ghc-filepath x86_64 1.3.0.1-26.4.el7 epel 60 k
ghc-filepath-devel x86_64 1.3.0.1-26.4.el7 epel 193 k
ghc-ghc x86_64 7.6.3-26.4.el7 epel 6.4 M
ghc-ghc-devel x86_64 7.6.3-26.4.el7 epel 32 M
ghc-hashable x86_64 1.1.2.5-4.el7 epel 20 k
ghc-hashable-devel x86_64 1.1.2.5-4.el7 epel 81 k
ghc-hashed-storage x86_64 0.5.10-7.el7 epel 124 k
ghc-haskeline x86_64 0.7.0.3-3.el7 epel 231 k
ghc-haskell-platform-devel x86_64 2013.2.0.0-40.el7 epel 16 k
ghc-haskell-src x86_64 1.0.1.5-40.el7 epel 283 k
ghc-haskell-src-devel x86_64 1.0.1.5-40.el7 epel 1.1 M
ghc-haskell2010 x86_64 1.1.1.0-26.4.el7 epel 42 k
ghc-haskell2010-devel x86_64 1.1.1.0-26.4.el7 epel 290 k
ghc-haskell98 x86_64 2.0.0.2-26.4.el7 epel 66 k
ghc-haskell98-devel x86_64 2.0.0.2-26.4.el7 epel 343 k
ghc-hoopl x86_64 3.9.0.0-26.4.el7 epel 119 k
ghc-hoopl-devel x86_64 3.9.0.0-26.4.el7 epel 616 k
ghc-hpc x86_64 0.6.0.0-26.4.el7 epel 72 k
ghc-hpc-devel x86_64 0.6.0.0-26.4.el7 epel 235 k
ghc-html x86_64 1.0.1.2-29.el7 epel 57 k
ghc-html-devel x86_64 1.0.1.2-29.el7 epel 222 k
ghc-libraries x86_64 7.6.3-26.4.el7 epel 36 k
ghc-mmap x86_64 0.5.8-4.el7 epel 24 k
ghc-mtl x86_64 2.1.2-27.el7 epel 33 k
ghc-mtl-devel x86_64 2.1.2-27.el7 epel 209 k
ghc-network x86_64 2.4.1.2-32.el7 epel 191 k
ghc-network-devel x86_64 2.4.1.2-32.el7 epel 857 k
ghc-old-locale x86_64 1.0.0.5-26.4.el7 epel 50 k
ghc-old-locale-devel x86_64 1.0.0.5-26.4.el7 epel 106 k
ghc-old-time x86_64 1.1.0.1-26.4.el7 epel 88 k
ghc-old-time-devel x86_64 1.1.0.1-26.4.el7 epel 320 k
ghc-parallel x86_64 3.2.0.3-35.el7 epel 23 k
ghc-parallel-devel x86_64 3.2.0.3-35.el7 epel 118 k
ghc-parsec x86_64 3.1.3-31.el7 epel 105 k
ghc-parsec-devel x86_64 3.1.3-31.el7 epel 567 k
ghc-pretty x86_64 1.1.1.0-26.4.el7 epel 57 k
ghc-pretty-devel x86_64 1.1.1.0-26.4.el7 epel 176 k
ghc-primitive x86_64 0.5.0.1-4.el7 epel 36 k
ghc-primitive-devel x86_64 0.5.0.1-4.el7 epel 173 k
ghc-process x86_64 1.1.0.2-26.4.el7 epel 61 k
ghc-process-devel x86_64 1.1.0.2-26.4.el7 epel 191 k
ghc-random x86_64 1.0.1.1-27.el7 epel 64 k
ghc-random-devel x86_64 1.0.1.1-27.el7 epel 271 k
ghc-regex-base x86_64 0.93.2-29.el7 epel 28 k
ghc-regex-base-devel x86_64 0.93.2-29.el7 epel 137 k
ghc-regex-compat x86_64 0.95.1-35.el7 epel 15 k
ghc-regex-compat-devel x86_64 0.95.1-35.el7 epel 57 k
ghc-regex-posix x86_64 0.95.2-30.el7 epel 47 k
ghc-regex-posix-devel x86_64 0.95.2-30.el7 epel 219 k
ghc-split x86_64 0.2.2-2.el7 epel 23 k
ghc-split-devel x86_64 0.2.2-2.el7 epel 108 k
ghc-stm x86_64 2.4.2-26.el7 epel 27 k
ghc-stm-devel x86_64 2.4.2-26.el7 epel 143 k
ghc-syb x86_64 0.4.0-35.el7 epel 39 k
ghc-syb-devel x86_64 0.4.0-35.el7 epel 202 k
ghc-tar x86_64 0.4.0.1-4.el7 epel 47 k
ghc-template-haskell x86_64 2.8.0.0-26.4.el7 epel 306 k
ghc-template-haskell-devel x86_64 2.8.0.0-26.4.el7 epel 1.6 M
ghc-terminfo x86_64 0.3.2.5-4.el7 epel 41 k
ghc-text x86_64 0.11.3.1-2.el7 epel 379 k
ghc-text-devel x86_64 0.11.3.1-2.el7 epel 1.8 M
ghc-time x86_64 1.4.0.1-26.4.el7 epel 187 k
ghc-time-devel x86_64 1.4.0.1-26.4.el7 epel 985 k
ghc-transformers x86_64 0.3.0.0-34.el7 epel 100 k
ghc-transformers-devel x86_64 0.3.0.0-34.el7 epel 538 k
ghc-unix x86_64 2.6.0.1-26.4.el7 epel 160 k
ghc-unix-devel x86_64 2.6.0.1-26.4.el7 epel 916 k
ghc-unordered-containers x86_64 0.2.3.0-3.el7 epel 64 k
ghc-unordered-containers-devel x86_64 0.2.3.0-3.el7 epel 307 k
ghc-utf8-string x86_64 0.3.7-8.el7 epel 43 k
ghc-vector x86_64 0.10.0.1-7.el7 epel 402 k
ghc-vector-devel x86_64 0.10.0.1-7.el7 epel 2.1 M
ghc-xhtml x86_64 3000.2.1-40.el7 epel 68 k
ghc-xhtml-devel x86_64 3000.2.1-40.el7 epel 302 k
ghc-zlib x86_64 0.5.4.1-27.el7 epel 36 k
ghc-zlib-devel x86_64 0.5.4.1-27.el7 epel 159 k
gl-manpages noarch 1.1-7.20130122.el7 base 994 k
glx-utils x86_64 8.3.0-10.el7 base 34 k
gmp-devel x86_64 1:6.0.0-15.el7 base 181 k
happy x86_64 1.18.10-35.el7 epel 234 k
libX11-devel x86_64 1.6.5-2.el7 base 980 k
libXau-devel x86_64 1.0.8-2.1.el7 base 14 k
libXdamage-devel x86_64 1.1.4-4.1.el7 base 9.7 k
libXext-devel x86_64 1.3.3-3.el7 base 75 k
libXfixes-devel x86_64 5.0.3-1.el7 base 13 k
libXxf86vm-devel x86_64 1.1.4-1.el7 base 18 k
libdrm-devel x86_64 2.4.91-3.el7 base 131 k
libffi-devel x86_64 3.0.13-18.el7 base 23 k
libglvnd-core-devel x86_64 1:1.0.1-0.8.git5baa1e5.el7 base 20 k
libglvnd-devel x86_64 1:1.0.1-0.8.git5baa1e5.el7 base 11 k
libglvnd-gles x86_64 1:1.0.1-0.8.git5baa1e5.el7 base 34 k
libglvnd-opengl x86_64 1:1.0.1-0.8.git5baa1e5.el7 base 43 k
libmng x86_64 1.0.10-14.el7 base 171 k
libpfm x86_64 4.7.0-10.el7 base 257 k
libxcb-devel x86_64 1.13-1.el7 base 1.1 M
lm_sensors-libs x86_64 3.4.0-6.20160601gitf9185e5.el7 base 42 k
mesa-libGL-devel x86_64 18.0.5-4.el7_6 updates 160 k
mesa-libGLU x86_64 9.0.0-4.el7 base 196 k
mesa-libGLU-devel x86_64 9.0.0-4.el7 base 9.0 k
mock-core-configs noarch 31.2-1.el7 epel 43 k
ocaml-compiler-libs x86_64 4.05.0-6.el7 base 7.6 M
ocaml-runtime x86_64 4.05.0-6.el7 base 2.8 M
ocaml-srpm-macros noarch 5-2.el7 base 4.7 k
otf2 x86_64 1.5.1-1.el7 epel 318 k
otf2-devel x86_64 1.5.1-1.el7 epel 116 k
papi x86_64 5.2.0-26.el7 base 239 k
papi-devel x86_64 5.2.0-26.el7 base 165 k
pcre2-utf16 x86_64 10.23-2.el7 base 189 k
pigz x86_64 2.3.4-1.el7 epel 81 k
python-BeautifulSoup noarch 1:3.2.1-7.el7 epel 44 k
python-Levenshtein x86_64 0.10.1-19.el7 epel 46 k
python-dateutil noarch 1.5-7.el7 base 85 k
python-enchant noarch 1.6.5-14.el7 epel 97 k
python-genshi x86_64 0.7-3.el7 epel 595 k
python-jinja2 noarch 2.7.2-3.el7_6 updates 518 k
python-kitchen noarch 1.1.1-5.el7 base 267 k
python-markupsafe x86_64 0.11-10.el7 base 25 k
python-vobject noarch 0.8.1c-8.el7 epel 88 k
python2-simplejson x86_64 3.10.0-2.el7 epel 188 k
python36 x86_64 3.6.8-1.el7 epel 67 k
python36-chardet noarch 3.0.4-1.el7 epel 190 k
python36-distro noarch 1.2.0-3.el7 epel 30 k
python36-idna noarch 2.7-2.el7 epel 98 k
python36-jinja2 noarch 2.8.1-2.el7 epel 277 k
python36-libs x86_64 3.6.8-1.el7 epel 8.6 M
python36-markupsafe x86_64 0.23-3.el7 epel 32 k
python36-pyroute2 noarch 0.4.13-2.el7 epel 351 k
python36-pysocks noarch 1.6.8-6.el7 epel 30 k
python36-requests noarch 2.12.5-3.el7 epel 109 k
python36-rpm x86_64 4.11.3-4.el7 epel 767 k
python36-setuptools noarch 39.2.0-3.el7 epel 631 k
python36-six noarch 1.11.0-3.el7 epel 33 k
python36-urllib3 noarch 1.19.1-5.el7 epel 134 k
qt x86_64 1:4.8.7-3.el7_6 updates 4.6 M
qt-settings noarch 19-23.8.el7.centos base 17 k
qt-x11 x86_64 1:4.8.7-3.el7_6 updates 13 M
qt5-qtbase x86_64 5.9.2-3.el7 base 3.3 M
qt5-qtbase-common noarch 5.9.2-3.el7 base 26 k
qt5-qtbase-gui x86_64 5.9.2-3.el7 base 5.2 M
scorep-libs x86_64 1.4.2-7.el7 epel 683 k
usermode x86_64 1.111-5.el7 base 193 k
xcb-util-image x86_64 0.4.0-2.el7 base 15 k
xcb-util-keysyms x86_64 0.4.0-1.el7 base 10 k
xcb-util-renderutil x86_64 0.3.9-3.el7 base 12 k
xcb-util-wm x86_64 0.4.1-5.el7 base 25 k
xorg-x11-proto-devel noarch 2018.4-1.el7 base 280 k
yum-utils noarch 1.1.31-50.el7 base 121 k
zlib-devel x86_64 1.2.7-18.el7 base 50 k
Updating for dependencies:
mesa-libEGL x86_64 18.0.5-4.el7_6 updates 102 k
mesa-libGL x86_64 18.0.5-4.el7_6 updates 162 k
mesa-libgbm x86_64 18.0.5-4.el7_6 updates 38 k
mesa-libglapi x86_64 18.0.5-4.el7_6 updates 44 k
Transaction Summary
=====================================================================================================================================================================================
Install 14 Packages (+207 Dependent packages)
Upgrade (4 Dependent packages)
Total download size: 213 M
Is this ok [y/d/N]:
选择 y,回车进行安装
也可以选择在数据库安装过程中根据提示去安装所需软件依赖包。
最后显示各类工具安装完成以后,Master 端的系统配置就已经完成,Slave 端此处不再举例,按照 Master 端操作即可。
2.数据库安装
数据库版本:5.7.27
下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads
Master 端:
将下载下来的数据库文件上传至 Master 服务器端的 /u01 目录下。(这个目录根据自己情况)
通过 rz 命令上传安装包,首先安装 lrzsz 工具
[root@mysql-master yum.repos.d]# yum install -y lrzsz
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* epel: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
Resolving Dependencies
--> Running transaction check
---> Package lrzsz.x86_64 0:0.12.20-36.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
=====================================================================================================================================================================================
Package Arch Version Repository Size
=====================================================================================================================================================================================
Installing:
lrzsz x86_64 0.12.20-36.el7 base 78 k
Transaction Summary
=====================================================================================================================================================================================
Install 1 Package
Total download size: 78 k
Installed size: 181 k
Downloading packages:
lrzsz-0.12.20-36.el7.x86_64.rpm | 78 kB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : lrzsz-0.12.20-36.el7.x86_64 1/1
Verifying : lrzsz-0.12.20-36.el7.x86_64 1/1
Installed:
lrzsz.x86_64 0:0.12.20-36.el7
Complete!
然后上传数据库压缩包
[root@mysql-master u01]# ls
mysql-5.7.27-el7-x86_64.tar.gz
[root@mysql-master u01]#
[root@mysql-master u01]# tar -xzvf mysql-5.7.27-el7-x86_64.tar.gz
[root@mysql-master u01]# ls
mysql-5.7.27-el7-x86_64 mysql-5.7.27-el7-x86_64.tar.gz
[root@mysql-master u01]# ln -s ./mysql-5.7.27-el7-x86_64 ./mysql
[root@mysql-master u01]# cd mysql
[root@mysql-master mysql]# ls
bin COPYING docs include lib man README share support-files
创建数据库数据存储位置
[root@mysql-master mysql]# ls
bin COPYING data docs include lib man README share support-files
创建 MySQL 用户,并将解压的 MySQL 程序文件授权给 MySQL 用户
[root@mysql-master ~]# useradd -s /sbin/nologin -r mysql
[root@mysql-master ~]# id mysql
uid=998(mysql) gid=995(mysql) groups=995(mysql)
[root@mysql-master ~]# chown -R mysql:mysql /u01/mysql
[root@mysql-master ~]# ll /u01/
total 697288
lrwxrwxrwx 1 mysql mysql 25 Sep 12 11:02 mysql -> ./mysql-5.7.27-el7-x86_64
drwxr-xr-x 10 root root 141 Sep 12 11:15 mysql-5.7.27-el7-x86_64
-rw-r--r-- 1 root root 714022690 Aug 20 15:54 mysql-5.7.27-el7-x86_64.tar.gz
[root@mysql-master ~]# chown -R mysql:mysql /u01/mysql/
[root@mysql-master ~]# ll /u01/mysql/
total 36
drwxr-xr-x 2 mysql mysql 4096 Sep 12 10:55 bin
-rw-r--r-- 1 mysql mysql 17987 Jun 10 22:43 COPYING
drwxr-xr-x 2 mysql mysql 6 Sep 12 11:15 data
drwxr-xr-x 2 mysql mysql 55 Sep 12 10:55 docs
drwxr-xr-x 3 mysql mysql 4096 Sep 12 10:54 include
drwxr-xr-x 5 mysql mysql 230 Sep 12 10:55 lib
drwxr-xr-x 4 mysql mysql 30 Sep 12 10:54 man
-rw-r--r-- 1 mysql mysql 2478 Jun 10 22:43 README
drwxr-xr-x 28 mysql mysql 4096 Sep 12 10:55 share
drwxr-xr-x 2 mysql mysql 90 Sep 12 10:55 support-files
生成环境变量,以便于执行 mysql 各类命令
生成环境变量
[root@mysql-master ~]# source ~/.bash_profile
初始化 MySQL 数据库
[root@mysql-master ~]# ll /u01/mysql/data/
total 0
[root@mysql-master ~]# mysqld --initialize --user=mysql --basedir=/u01/mysql --datadir=/u01/mysql/data/ --explicit_defaults_for_timestamp
mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
缺少包依赖
[root@mysql-master ~]# yum install -y libaio
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* epel: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
Resolving Dependencies
--> Running transaction check
---> Package libaio.x86_64 0:0.3.109-13.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
=====================================================================================================================================================================================
Package Arch Version Repository Size
=====================================================================================================================================================================================
Installing:
libaio x86_64 0.3.109-13.el7 base 24 k
Transaction Summary
=====================================================================================================================================================================================
Install 1 Package
Total download size: 24 k
Installed size: 38 k
Downloading packages:
libaio-0.3.109-13.el7.x86_64.rpm | 24 kB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : libaio-0.3.109-13.el7.x86_64 1/1
Verifying : libaio-0.3.109-13.el7.x86_64 1/1
Installed:
libaio.x86_64 0:0.3.109-13.el7
Complete!
继续执行初始化
[root@mysql-master ~]# mysqld --initialize --user=mysql --basedir=/u01/mysql --datadir=/u01/mysql/data/ --explicit_defaults_for_timestamp
2019-09-12T03:34:44.044470Z 0 [Warning] InnoDB: New log files created, LSN=45790
2019-09-12T03:34:44.140967Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2019-09-12T03:34:44.209986Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 4303ebdc-d50e-11e9-a1df-000c298a9e9f.
2019-09-12T03:34:44.211302Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2019-09-12T03:34:44.213042Z 1 [Note] A temporary password is generated for root@localhost: GYkyrk!Mr9Ef
上图中红色部分为初始密码,接下来要用到。
[root@mysql-master ~]# ll /u01/mysql/data/
total 110628
-rw-r----- 1 mysql mysql 56 Sep 12 11:34 auto.cnf
-rw-r----- 1 mysql mysql 424 Sep 12 11:34 ib_buffer_pool
-rw-r----- 1 mysql mysql 12582912 Sep 12 11:34 ibdata1
-rw-r----- 1 mysql mysql 50331648 Sep 12 11:34 ib_logfile0
-rw-r----- 1 mysql mysql 50331648 Sep 12 11:34 ib_logfile1
drwxr-x--- 2 mysql mysql 4096 Sep 12 11:34 mysql
drwxr-x--- 2 mysql mysql 8192 Sep 12 11:34 performance_schema
drwxr-x--- 2 mysql mysql 8192 Sep 12 11:34 sys
此时 data 目录下已经生成相关文件。
修改 MySQL 配置文件(没有的话手动创建)
[root@mysql-master ~]# cat /etc/my.cnf
[mysqld]
basedir=/u01/mysql
datadir=/u01/mysql/data
log-bin=master-bin
server-id=101
参数说明
basedir
该参数指定了安装 MySQL 的安装路径,填写全路径可以解决相对路径所造成的问题。datadir
该参数指定了 MySQL 的数据库文件放在什么路径下。数据库文件即我们常说的 MySQL data 文件。log-bin
该参数只要配置就表示开启了 MySQL 的 bin log 日志功能,注意改参数的值是我们自定义的,我们自定义的值将作为 bin log 的名称的前缀信息哟,我们可以使用 MySQL 命令 "show variables like'%log_bin%';" 查看咱们的配置。server-id
该参数可以指定数据库服务器的唯一标识。在同一个复制组下的所有实例的 server_id 都必须是唯一的,而且取值必须是正整数,取值范围是 1 ~(232)−1
启动数据库
将启动脚本拷贝至启动文件,并修改参数
[root@mysql-master ~]# cp /u01/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@mysql-master ~]# vim /etc/init.d/mysqld
修改文件内容
启动数据库
[root@mysql-master ~]# service mysqld start
Starting MySQL.Logging to '/u01/mysql/data/mysql-master.err'.
. SUCCESS!
查看数据库状态
[root@mysql-master ~]# service mysqld status
SUCCESS! MySQL running (30349)
[root@mysql-master ~]# ps -ef|grep mysqld
root 30213 1 0 14:00 pts/1 00:00:00 /bin/sh /u01/mysql/bin/mysqld_safe --datadir=/u01/mysql/data --pid-file=/u01/mysql/data/mysql-master.pid
mysql 30349 30213 0 14:00 pts/1 00:00:00 /u01/mysql/bin/mysqld --basedir=/u01/mysql --datadir=/u01/mysql/data --plugin-dir=/u01/mysql/lib/plugin --user=mysql --log-error=mysql-master.err --pid-file=/u01/mysql/data/mysql-master.pid
root 30470 28999 0 14:02 pts/1 00:00:00 grep --color=auto mysqld
[root@mysql-master ~]#
登录数据库并初始化管理员密码,此处输入的密码为之前初始化的密码。
[root@mysql-master ~]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.7.27-log
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> set password=password('newpassword');
Query OK, 0 rows affected, 1 warning (0.01 sec)
mysql> quit
Bye
新密码登录 MySQL 数据库
[root@mysql-master ~]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 5.7.27-log MySQL Community Server (GPL)
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
mysql>
mysql>
mysql>
mysql>
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
Slave 端:
Slave 端的操作按照 Master 端进行配置,此处不再赘述(注意 Slave 端 /etc/my.cnf 配置文件中 server-id 的值应区别于 Master 端,比如设置为 server-id=102)
3.MySQL 复制介绍
(1)MySQL 复制允许将主实例(master)上的数据同步到一个或多个从实例(slave)上,默认情况下复制是异步进行的,从库也不需要一直连接主库来同步数据。(2)MySQL 复制的数据粒度可以是主实例上所有的数据库,也可以是指定的一个或多个数据库,也可以是一个数据库里的指定的表。(3)MySQL 复制带来的优势在于:扩展能力:通过复制可以将 MySQL 的性分到一个或多个 slave 上。这要求所有的写操作和修改操作都必须在 Master 上完成,而读操作可以被分配到一个或多个 salve 上。将读写分离到不同服务执行之后,MySQL 的读写性能得到提升。数据库备份:由于从实例时同步主实例的数据,所以可以将备份作业部署到从库。数据分析和报表:同样,一些数据分析和报表的实现可以在从实例执行,以减少对主库的性能影响。容灾能力:可以在物理距离较远的另一个数据建立 slave, 保证在主实例所在地区遭遇灾难时,在另一个数据中心能快速恢复。
MySQL 复制有两种方法
(1)传统方式
基于主库的 bin-log 将日志事件和事件位置复制到从库,从库再加以应用来达到主从同步的目的。(2)Gtid 方式
global transaction identitifiers 是基于事物来复制数据,因此也就不依赖日志文件,同时又能更好的保证主从库数据一致性。
MySQL 复制有三种核心格式
复制的工作原理是数据库修改记录到 bin log 日志并传递到 slave,然后 slave 在本地还原的过程。而时间记录到 bin log 的格式会有所不同。基于语句的复制(statement based replication):基于主库将 SQL 语句写入到 bin log 中完成复制。基于行数据的复制(row based replication):基于主库将每一行数据变化的信息作为时间写入到 bin log 中完成日志。默认就是基于行级别的复制,因为它相对语句复制逻辑更为严谨。混合复制(mixed based replication):上述两者的结合。默认情况下优先使用基于语句的复制,只有当部分语句如果基于语句复制不完全的情况下才会自动切换为基于行数据的复制。
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
mysql> SHOW VARIABLES LIKE '%BINLOG_FORMAT%';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| binlog_format | ROW | #######可以看出 MySQL 默认是采用基于行复制的
+---------------+-------+
1 row in set (0.01 sec)
mysql>
配置 MySQL 基于 bin-log 主从同步
编辑 My.cnf 配置文件
Master:
[root@mysql-master ~]# cat /etc/my.cnf
[mysqld]
basedir=/u01/mysql
datadir=/u01/mysql/data
log-bin=master-bin
server-id=101
Slave:
[root@MySQL-Slave mysql]# cat /etc/my.cnf
[mysqld]
basedir=/u01/mysql
datadir=/u01/mysql/data
log-bin=master-bin
server-id=102
在主库创建一个专门用来复制的数据库用户,这样所有从库都可以用这个用户来连接主库,也可以确保这个用户只有复制的权限
[root@mysql-master ~]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 5.7.27-log MySQL Community Server (GPL)
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
mysql>
mysql> create user 'copy'@'%' identified by '123456'; ################### 创建执行复制操作的用户
Query OK, 0 rows affected (0.01 sec)
mysql> grant replication slave on *.* to 'copy'@'%'; #################Grant replication slave 拥有此权限,可以查看从服务器,从主服务器读取二进制日志
Query OK, 0 rows affected (0.01 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> quit
Bye
在 slave 端用 copy 用户登录 master 端数据库进行验证
[root@MySQL-Slave mysql]# mysql -u copy -123456 -P 3306 -h 192.168.179.155
mysql: [ERROR] mysql: unknown option '-1'
[root@MySQL-Slave mysql]# mysql -ucopy -p123456 -P 3306 -h 192.168.179.155
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 11
Server version: 5.7.27-log MySQL Community Server (GPL)
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
+--------------------+
1 row in set (0.00 sec)
获取主数据库的日志信息并生成主数据库数据镜像
[root@mysql-master ~]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 12
Server version: 5.7.27-log MySQL Community Server (GPL)
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
mysql>
mysql>
mysql>
mysql>
mysql>
mysql>
mysql>
mysql> FLUSH TABLES WITH READ LOCK; ##### 对主库上所有表加锁,停止修改,即在从库复制过程中不允许主库进行 UPDATE,DELETE,INSERT 语句
Query OK, 0 rows affected (0.01 sec)
mysql> SHOW MASTER STATUS; ##### 获取主库的日志信息,file 表示当前日志文件名称,position 表示当前日志的位置
+——————-+———-+————–+——————+——————-+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+——————-+———-+————–+——————+——————-+
| master-bin.000001 | 1235 | | | |
+——————-+———-+————–+——————+——————-+
1 row in set (0.00 sec)
mysql>quit
mysql> unlock tables; #######主库数据生成镜像完毕后,我们需要把主库的锁释放掉,需要注意的是,在上锁这一段期间,我们无法对数据库进行写操作,比如 UPDATA,DELETE,INSERT。
Query OK, 0 rows affected (0.00 sec)
mysql>
将主库的镜像拷贝当从库中,让从库应用主库镜像
[root@mysql-master ~]# scp MySQL-Master.db 192.168.179.159:/u01
The authenticity of host '192.168.179.159 (192.168.179.159)' can't be established.
ECDSA key fingerprint is SHA256:REW5vL7AflYUTReEL1qAUx9boD4MmmmcUpN+buhZVps.
ECDSA key fingerprint is MD5:78:8d:cf:7a:9d:a5:cb:08:44:0e:9b:13:96:52:a2:6f.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.179.159' (ECDSA) to the list of known hosts.
root@192.168.179.159's password:
MySQL-Master.db 100% 826KB 31.5MB/s 00:00
[root@mysql-master ~]#
在从库将主库镜像导入数据库
[root@MySQL-Slave mysql]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.27-log MySQL Community Server (GPL)
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
mysql>
mysql>
mysql>
mysql>
mysql>
mysql>
mysql>
mysql>
mysql>
mysql> source /u01/MySQL-Master.db;
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected, 1 warning (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.03 sec)
Query OK, 1 row affected (0.01 sec)
Database changed
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 2 rows affected (0.01 sec)
Records: 2 Duplicates: 0 Warnings: 0
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.02 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 2 rows affected (0.01 sec)
Records: 2 Duplicates: 0 Warnings: 0
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 43 rows affected (0.00 sec)
Records: 43 Duplicates: 0 Warnings: 0
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 700 rows affected (0.03 sec)
Records: 700 Duplicates: 0 Warnings: 0
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 1555 rows affected (0.02 sec)
Records: 1555 Duplicates: 0 Warnings: 0
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 661 rows affected (0.11 sec)
Records: 661 Duplicates: 0 Warnings: 0
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 7 rows affected (0.00 sec)
Records: 7 Duplicates: 0 Warnings: 0
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 2 rows affected (0.00 sec)
Records: 2 Duplicates: 0 Warnings: 0
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 1 row affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 6 rows affected (0.01 sec)
Records: 6 Duplicates: 0 Warnings: 0
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 2 rows affected (0.00 sec)
Records: 2 Duplicates: 0 Warnings: 0
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.02 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 4 rows affected (0.00 sec)
Records: 4 Duplicates: 0 Warnings: 0
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected, 1 warning (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
mysql>
mysql> show databases; ######### 可以看到从库目前跟主库状态一致
+——————–+
| Database |
+——————–+
| information_schema |
| mysql |
| performance_schema |
| sys |
+——————–+
4 rows in set (0.01 sec)
mysql>
在从库上建立复制关系,即从库指定主库的日志信息和链接信息
mysql> CHANGE MASTER TO
-> MASTER_HOST='192.168.179.155',
-> MASTER_PORT=3306,
-> MASTER_USER='copy',
-> MASTER_PASSWORD='123456',
-> MASTER_LOG_FILE='master-bin.000001',
-> MASTER_LOG_POS=1235;
Query OK, 0 rows affected, 2 warnings (0.03 sec)
mysql>
从库启动复制进程
mysql> start slave;
ERROR 1872 (HY000): Slave failed to initialize relay log info structure from the repository
报错
cat /u01/mysql/data/MySQL-Slave.err
2019-09-12T06:28:02.298187Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use –explicit_defaults_for_timestamp server option (see documentation for more details).
2019-09-12T06:28:02.298682Z 0 [Note] –secure-file-priv is set to NULL. Operations related to importing and exporting data are disabled
2019-09-12T06:28:02.298862Z 0 [Note] /u01/mysql/bin/mysqld (mysqld 5.7.27-log) starting as process 9716 …
2019-09-12T06:28:02.359510Z 0 [Note] InnoDB: PUNCH HOLE support available
2019-09-12T06:28:02.359816Z 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2019-09-12T06:28:02.359832Z 0 [Note] InnoDB: Uses event mutexes
2019-09-12T06:28:02.359841Z 0 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
2019-09-12T06:28:02.359850Z 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
2019-09-12T06:28:02.359858Z 0 [Note] InnoDB: Using Linux native AIO
2019-09-12T06:28:02.363324Z 0 [Note] InnoDB: Number of pools: 1
2019-09-12T06:28:02.367124Z 0 [Note] InnoDB: Using CPU crc32 instructions
2019-09-12T06:28:02.389599Z 0 [Note] InnoDB: Initializing buffer pool, total size = 128M, instances = 1, chunk size = 128M
2019-09-12T06:28:02.501357Z 0 [Note] InnoDB: Completed initialization of buffer pool
2019-09-12T06:28:02.537834Z 0 [Note] InnoDB: If the mysqld execution user is authorized, page cleaner thread priority can be changed. See the man page of setpriority().
2019-09-12T06:28:02.609909Z 0 [Note] InnoDB: Highest supported file format is Barracuda.
2019-09-12T06:28:02.714727Z 0 [Note] InnoDB: Creating shared tablespace for temporary tables
2019-09-12T06:28:02.714817Z 0 [Note] InnoDB: Setting file ‘./ibtmp1’ size to 12 MB. Physically writing the file full; Please wait …
2019-09-12T06:28:02.853129Z 0 [Note] InnoDB: File ‘./ibtmp1’ size is now 12 MB.
2019-09-12T06:28:02.873370Z 0 [Note] InnoDB: 96 redo rollback segment(s) found. 96 redo rollback segment(s) are active.
2019-09-12T06:28:02.873419Z 0 [Note] InnoDB: 32 non-redo rollback segment(s) are active.
2019-09-12T06:28:02.893320Z 0 [Note] InnoDB: Waiting for purge to start
2019-09-12T06:28:02.944058Z 0 [Note] InnoDB: 5.7.27 started; log sequence number 2633042
2019-09-12T06:28:02.968733Z 0 [Note] Plugin ‘FEDERATED’ is disabled.
2019-09-12T06:28:02.969598Z 0 [Note] InnoDB: Loading buffer pool(s) from /u01/mysql-5.7.27-el7-x86_64/data/ib_buffer_pool
2019-09-12T06:28:03.097731Z 0 [Note] InnoDB: Buffer pool(s) load completed at 190912 14:28:03
2019-09-12T06:28:03.099614Z 0 [Warning] Failed to set up SSL because of the following SSL library error: SSL context is not usable without certificate and private key
2019-09-12T06:28:03.100248Z 0 [Note] Server hostname (bind-address): ‘*’; port: 3306
2019-09-12T06:28:03.100326Z 0 [Note] IPv6 is available.
2019-09-12T06:28:03.100388Z 0 [Note] – ‘::’ resolves to ‘::’;
2019-09-12T06:28:03.100440Z 0 [Note] Server socket created on IP: ‘::’.
2019-09-12T06:28:03.122389Z 0 [Warning] Neither –relay-log nor –relay-log-index were used; so replication may break when this MySQL server acts as a slave and has his hostname changed!! Please use ‘–relay-log=MySQL-Slave-relay-bin’ to avoid this problem.
2019-09-12T06:28:03.125374Z 0 [ERROR] Failed to open the relay log ‘./slavejmy-relay-bin.000005’ (relay_log_pos 273).
2019-09-12T06:28:03.125398Z 0 [ERROR] Could not find target log file mentioned in relay log info in the index file ‘./MySQL-Slave-relay-bin.index’ during relay log initialization.
2019-09-12T06:28:03.125933Z 0 [ERROR] Slave: Failed to initialize the master info structure for channel ”; its record may still be present in ‘mysql.slave_master_info’ table, consider deleting it.
2019-09-12T06:28:03.125976Z 0 [ERROR] Failed to create or recover replication info repositories.
2019-09-12T06:28:03.125992Z 0 [Note] Failed to start slave threads for channel ”
2019-09-12T06:28:03.125999Z 0 [Note] Some of the channels are not created/initialized properly. Check for additional messages above. You will not be able to start replication on those channels until the issue is resolved and the server restarted.
2019-09-12T06:28:03.181410Z 0 [Note] Event Scheduler: Loaded 0 events
2019-09-12T06:28:03.181759Z 0 [Note] /u01/mysql/bin/mysqld: ready for connections.
Version: ‘5.7.27-log’ socket: ‘/tmp/mysql.sock’ port: 3306 MySQL Community Server (GPL)
2019-09-12T07:04:14.300189Z 2 [Note] ‘CHANGE MASTER TO FOR CHANNEL ” executed’. Previous state master_host=’192.168.179.155′, master_port= 3306, master_log_file=’master-bin.000005′, master_log_pos= 154, master_bind=”. New state master_host=’192.168.179.155′, master_port= 3306, master_log_file=’master-bin.000001′, master_log_pos= 1235, master_bind=”.
2019-09-12T07:15:43.769233Z 2 [Note] ‘CHANGE MASTER TO FOR CHANNEL ” executed’. Previous state master_host=’192.168.179.155′, master_port= 3306, master_log_file=’master-bin.000001′, master_log_pos= 1235, master_bind=”. New state master_host=’192.168.179.155′, master_port= 3306, master_log_file=’master-bin.000001′, master_log_pos= 1235, master_bind=”.
2019-09-12T07:16:43.235100Z 2 [ERROR] Slave SQL for channel ”: Slave failed to initialize relay log info structure from the repository, Error_code: 1872
2019-09-12T07:17:21.391268Z 2 [ERROR] Slave SQL for channel ”: Slave failed to initialize relay log info structure from the repository, Error_code: 1872
2019-09-12T07:17:49.486517Z 3 [ERROR] Slave SQL for channel ”: Slave failed to initialize relay log info structure from the repository, Error_code: 1872
2019-09-12T07:18:20.609294Z 4 [ERROR] Slave SQL for channel ”: Slave failed to initialize relay log info structure from the repository, Error_code: 1872
从报错上看,意思是启动 slave 时,使用 repository 中信息初始化 relay log 结构失败了。为什么失败了?原来是从 MySQL-Slave-relay-bin.index 文件中找不到 slavejmy-relay-bin.000005 文件。到这里,答案就很清楚了,由于我之前实验过程中做过一次复制操作,在 mysql 库中的 slave_relay_log_info 表中依然保留之前 relay_log 的信息,所以导致启动 slave 报错。
那如何解决呢?先来简单的了解 MySQL Relay log 的基础知识:
MySQL Relay log 介绍
在 MySQL 复制结构下,Slave 服务器会产生三种日志文件,用来保存主库的二进制日志事件以及 relay log 已执行到的位置和状态。
relay log 文件:
由 IO thread 线程从主库读取的二进制日志事件组成,该日志被 Slave 上的 SQL thread 线程执行,从而实现数据的复制。
master info log:
该文件保存 slave 连接 master 的状态以及配置信息,如用户名,密码,日志执行的位置等。在 5.6 版本之前,都是使用 master.info 文件,从 5.6 开始,通过在 my.cnf 中配置 --master-info-repository=TABLE。
这些信息会被写入mysql.slave_master_info
表中,代替原来的 master.info 文件了。
relay log info log:
该文件保存 slave 上 relay log 的执行位置。在 5.6 版本之前,都是使用 relay-log.info 文件,从 5.6 开始,通过在 my.cnf 中配置 –relay-log-info-reposity=TABLE, 使用 mysql.slave_relay_log_info 表代替原来的文件,每次当 slave 上执行 start slave 时,就会读取该表中的位置信息。
新版本使用表来代替原来的文件,主要为了 crash-safe replication,从而大大提高从库的可靠性。为了保证意外情况下从库的可靠性,mysql.slave_master_info 和 mysql.slave_relay_log_info 表必须为事务性的表,从 5.6.6 起,这些表默认使用 InnoDB 存储引擎。在 5.6.5 及之前的版本默认使用 MyISAM 引擎,可用下面语句进行转换:
ALTER TABLE mysql.slave_master_info ENGINE=InnoDB;
ALTER TABLE mysql.slave_relay_log_info ENGINE=InnoDB;
通过上面的报错以及 relay log 介绍,很容易知道由于 mysql.slave_relay_log_info 表中保留了以前的复制信息,导致新从库启动时无法找到对应文件,那么我们清理掉该表中的记录不就可以了。再次提醒,不要手动删该表数据,MySQL 已经提供工具给我们了:reset slave:
reset slave 干的那些事:
1、删除 slave_master_info,slave_relay_log_info 两个表中数据;2、删除所有 relay log 文件,并重新创建新的 relay log 文件;3、不会改变 gtid_executed 或者 gtid_purged 的值
mysql> RESET SLAVE
Query OK, 0 rows affected (0.01 sec)
mysql> CHANGE MASTER TO
-> MASTER_HOST=’192.168.179.155′,
-> MASTER_PORT=3306,
-> MASTER_USER=’copy’,
-> MASTER_PASSWORD=’123456′,
-> MASTER_LOG_FILE=’master-bin.000001′,
-> MASTER_LOG_POS=1235;
Query OK, 0 rows affected, 2 warnings (0.02 sec)
mysql> START SLAVE;
Query OK, 0 rows affected (0.01 sec)
到这里问题解决了。
【经验】:以后用冷备份恢复实例后,在启动 slave 前,先进行 reset slave 清空下以前的旧信息。
mysql> SHOW SLAVE STATUS\G
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.179.155
Master_User: copy
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: master-bin.000001
Read_Master_Log_Pos: 1235
Relay_Log_File: MySQL-Slave-relay-bin.000002
Relay_Log_Pos: 321
Relay_Master_Log_File: master-bin.000001
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 1235
Relay_Log_Space: 534
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 0
Last_IO_Error:
Last_SQL_Errno: 0
Last_SQL_Error:
Replicate_Ignore_Server_Ids:
Master_Server_Id: 101
Master_UUID: 4303ebdc-d50e-11e9-a1df-000c298a9e9f
Master_Info_File: /u01/mysql-5.7.27-el7-x86_64/data/master.info
SQL_Delay: 0
SQL_Remaining_Delay: NULL
Slave_SQL_Running_State: Slave has read all relay log; waiting for more updates
Master_Retry_Count: 86400
Master_Bind:
Last_IO_Error_Timestamp:
Last_SQL_Error_Timestamp:
Master_SSL_Crl:
Master_SSL_Crlpath:
Retrieved_Gtid_Set:
Executed_Gtid_Set:
Auto_Position: 0
Replicate_Rewrite_DB:
Channel_Name:
Master_TLS_Version:
1 row in set (0.00 sec)
mysql>
复制验证
在 Master 端新建一个库及表文件,查看有没有同步到从库
mysql> CREATE DATABASE copytest;
Query OK, 1 row affected (0.01 sec)
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| copytest |
| mysql |
| performance_schema |
| sys |
+--------------------+
5 rows in set (0.00 sec)
mysql> use copytest;
Database changed
mysql> create table copytest(id int,name char(10));
Query OK, 0 rows affected (0.03 sec)
mysql> show tables;
+--------------------+
| Tables_in_copytest |
+--------------------+
| copytest |
+--------------------+
1 row in set (0.00 sec)
mysql> insert into copytest values(1,'zhangsan');
Query OK, 1 row affected (0.03 sec)
mysql> insert into copytest values(2,'lisi');
Query OK, 1 row affected (0.01 sec)
mysql> select * from copytest;
+------+----------+
| id | name |
+------+----------+
| 1 | zhangsan |
| 2 | lisi |
+------+----------+
2 rows in set (0.00 sec)
mysql>
在 Slave 登录从库并进行验证
[root@MySQL-Slave ~]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 5.7.27-log MySQL Community Server (GPL)
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| copytest |
| mysql |
| performance_schema |
| sys |
+--------------------+
5 rows in set (0.00 sec)
mysql> use copytest;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> show tables;
+--------------------+
| Tables_in_copytest |
+--------------------+
| copytest |
+--------------------+
1 row in set (0.00 sec)
mysql> select * from copytest;
+------+----------+
| id | name |
+------+----------+
| 1 | zhangsan |
| 2 | lisi |
+------+----------+
2 rows in set (0.00 sec)
mysql>
成功!!!!!
可以将主库和从库的 mysqld 服务添加进系统启动服务中
主库:
[root@mysql-master ~]# /sbin/chkconfig mysqld on
[root@mysql-master ~]# chkconfig --list
Note: This output shows SysV services only and does not include native
systemd services. SysV configuration data might be overridden by native
systemd configuration.
If you want to list systemd services use 'systemctl list-unit-files'.
To see services enabled on particular target use
'systemctl list-dependencies [target]'.
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
netconsole 0:off 1:off 2:off 3:off 4:off 5:off 6:off
network 0:off 1:off 2:on 3:on 4:on 5:on 6:off
从库:
[root@MySQL-Slave ~]# /sbin/chkconfig mysqld on
[root@MySQL-Slave ~]# chkconfig --list
Note: This output shows SysV services only and does not include native
systemd services. SysV configuration data might be overridden by native
systemd configuration.
If you want to list systemd services use 'systemctl list-unit-files'.
To see services enabled on particular target use
'systemctl list-dependencies [target]'.
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
netconsole 0:off 1:off 2:off 3:off 4:off 5:off 6:off
network 0:off 1:off 2:on 3:on 4:on 5:on 6:off
完成后,关掉从库操作系统,模拟故障,然后在主库中创建新库及相应表数据,提交后重启 Slave 端的从库,进入从库,查看新增信息。
: