环境:Window10 上建立 VMWare 虚拟机,EasyInstaller 方式安装 CentOS 7

1. “失败”的经历

备份原 repo 文件,并更改 yum 源(方法详见修改yum源)为aliyun,按照 MariaDB官方方式将yum信息添加(参考添加yum内容)到新保存的源文件内。然后根据官方文章(详情查看使用yum安装MariaDB)进行安装,但遭遇了一个尴尬的问题——就是在我怀着期盼的心情运行

sudo yum install MariaDB-server MariaDB-client

之后发现,网速毁掉了一切,我指的是对国外站点的访问。

我推测,因为使用的是 MariaDB 官方给的地址,因此镜像可能在美国、在美洲、在欧洲......导致在安装“MariaDB-10.2.8-Centos7-x86_64-server.rpm”的时候只有2-4 kB/s 的速度,一会儿便会 Failed 。忍无可忍下,只好又寻找其它方法。所以我称它为“失败”的经历。但此时,无疑大部分文件已经被下载到了磁盘上,而且继续运行还会继续安装。

2. 本地安装

QQ群中热心网友 “梦境”提供信息,指出应该先下载下来然后本地安装,还帮忙找了两个官方安装方法,谢谢!

Ctrl+C 停掉当前缓慢的安装。去下载官方rpm包

选好下载是一个 tar 压缩包,解压缩之后释放一个文件夹里边都是 rpm file。

东西准备好了,去跟着官方教程 “Installing MariaDB With tjhe rpm Tool” 进行吧。

按照指引,先导航到官网选择匹配的版本(已完成),文件准备完毕,做一下签名的校验,签名校验的链接文中也带了。第一次校验时全部失败了

看了一下因为没有给对应的验证码,跟谁校验比对呢?按照官方指引,进行几步命令

#To check the signature you first need to import the public part of the key like so:
gpg --keyserver hkp://pgp.mit.edu --recv-keys 1BB943DB #Next you need to let pgp know about the key like so:
gpg --export --armour 1BB943DB > mariadb-signing-key.asc
sudo rpm --import mariadb-signing-key.asc #You can check to see if the key was imported with:
rpm -qa gpg-pubkey*

然后再运行

#Once the key is imported, you can check the signature of the MariaDB RPM files by running the something like the following in your download directory:

rpm --checksig $(find . -name '*.rpm')

校验完成之后,按照要求运行一下对原有 mysql 的检测,目的是如果有就清除掉

rpm -qa 'mysql*'

安装 MariaDB with

rpm -ivh MariaDB-*

本机出现了依赖问题没有成功

接下来就要处理这些

... 时间到了下周一,根据提示百度大法,百度到一片文章《Centos7安装MariaDB》后发现原文来自 MariaDB Installation (Version 10.1.21) via RPMs on CentOS 7,里边有一段 step by step跟着做一下,先做第一句 “sudo yum install rsync nmap lsof perl-DBI nc”,神奇的事情花生了

按照提示,下面该先安装下载的 MariaDB 的 rpm 包中一些辅助配套软件(我的理解)

sudo rpm -ivh jemalloc-3.6.-.el7.x86_64.rpm

sudo rpm -ivh jemalloc-devel-3.6.-.el7.x86_64.rpm

sudo rpm -ivh MariaDB-10.2.-centos7-x86_64-common.rpm

sudo rpm -ivh MariaDB-10.2.-centos7-x86_64-compact.rpm

sudo rpm -ivh MariaDB-10.2.-centos7-x86_64.rpm

sudo rpm -ivh galera-25.3.-.rhel7.el7.centos.x86_64.rpm

果然里遇到文章里说的可能的依赖问题

解决方式是 yum 安装

yum install boost-devel.x86_64

奇迹又一次花生

安装完依赖,回去接续安装刚才没装完的 galera

最后安装关键的 server

sudo rpm -ivh MariaDB-10.2.-centos7-x86_64-server.rpm

完了?又打开官方教程 Installing MariaDB With the rpm Tool 对照一下,发现路径下有很多 rpm 似乎没有(手动)安装,用 rpm -ivh MariaDB-* 再运行一下,结果提示

百度一下,先安装 libodbc.so.2() 这东西

sudo yum install unixODBC

libJudy 死活找不到,后来在 pkgs.org 找到一个,下载到本地 yum 安装

sudo yum install Judy-1.0.-.el7.x86_64.rpm

回头重新安装一遍 MariaDB-*

这总算安完了吧!!简单总结一下,这样比较好:

  • 先清理一下所有的 mysql* 安装痕迹
  • 先把依赖安装一下,比如 libodbc 和 libJudy 等
  • 单独下载然后本地安装比较好,就是把 rpms 下下来,解压好,进入路径,然后一通 sudo yum install MariaDB-*

一些链接:

  • 使用yum安装MariaDB:https://mariadb.com/kb/zh-cn/installing-mariadb-with-yum/
  • 下载MariaDB:https://mariadb.com/downloads
  • Checking MariaDB RPM Package Signatures:https://mariadb.com/kb/en/checking-mariadb-rpm-package-signatures/
  • Installing MariaDB With the rpm Tool:https://mariadb.com/kb/en/library/installing-mariadb-with-the-rpm-tool/
  • MariaDB Installation (Version 10.1.21) via RPMs on CentOS 7:https://mariadb.com/kb/en/library/mariadb-installation-version-10121-via-rpms-on-centos-7/
  • Installing MariaDB binary tarballs:https://mariadb.com/kb/en/library/installing-mariadb-binary-tarballs/
  • Centos7安装MariaDB:http://blog.163.com/yxba_02/blog/static/18755762017461170529?ignoreua
  • MariaDB Installation (Version 10.1.21) via RPMs on CentOS 7:https://mariadb.com/kb/en/library/mariadb-installation-version-10121-via-rpms-on-centos-7/
  • mysql_secure_installation:https://mariadb.com/kb/en/library/mysql_secure_installation/
  • libJudy.so.1:wget ftp://ftp.is.co.za/mirror/fedora.redhat.com/epel/6/x86_64/Judy-1.0.5-1.el6.x86_64.rpm (本文未使用这种方式而是作为借鉴和记录)

CentOS7下安装MariaDB的更多相关文章

  1. MariaDB Centos7 下安装MariaDB

    Centos7 下安装MariaDB by:授客 QQ:1033553122 1.下载安装文件 rpm包为例,对于标准服务器安装,至少需要下载client,shared,serve文件(安装时如果少了 ...

  2. CentOS7下安装Mariadb 10.3.17

    1. install lsb packagesudo yum install -y redhat-lsb 2.install net-tools packagesudo yum install -y ...

  3. CentOS7下安装MySQL并配置远程连接

    一.CentOS7下安装MySQL数据库 CentOS7默认的安装包里面已经没有 MySQL-Server安装包了,远程镜像中也没有了. 默认的是MariaDB (MySQL的一个分支,开发这个分支的 ...

  4. Linux - centos7 下 MySQL(mariadb) 和 主从复制

    目录 Linux - centos7 下 MySQL(mariadb) 和 主从复制 MySQL(mariadb) 安装MySQL(mariadb) 配置数据库的中文支持 在远程用 mysql客户端去 ...

  5. CentOS7 下 安装 supervisor以及使用

    CentOS7 下 安装 supervisor 以及使用 手动安装 [注] linux环境必须安装 python 1.获取supervisor包:[https://pypi.python.org/py ...

  6. Linux CentOs7 下安装 redis

    Linux CentOs7 下安装 redis 请将以下命令放入linux命令行中运行 如果安装过程前没有安装GCC请先安装  命令如下 $ yum install gcc-c++ $ wget ht ...

  7. Centos7下安装配置Redsocks

    Redsocks是一个开源的网络程序,代码依赖开源的libevent网络库.Redsocks允许你将所有TCP连接重定向到SOCKS或HTTPS代理,比如Shadowsocks(Centos7下安装配 ...

  8. CentOS7下安装SVN服务端

    CentOS7下安装SVN服务 1. yum命令即可方便的完成安装# sudo yum install subversion 测试安装是否成功:# svnserve --version 更改svn的默 ...

  9. centOS7下安装GUI图形界面

    1.如何在centOS7下安装GUI图形界面 当你安装centOS7服务器版本的时候,系统默认是不会安装GUI的图形界面程序,这个需要手动安装CentOS7 Gnome GUI包. 2.在系统下使用命 ...

随机推荐

  1. 【Java学习笔记之二十九】Java中的"equals"和"=="的用法及区别

    Java中的"equals"和"=="的用法及区别 在初学Java时,可能会经常碰到下面的代码: String str1 = new String(" ...

  2. 我的acm vim 备忘

    一.從命令到編輯模式 a :当前单词后面插入Appendi :当前位置插入Inserto :当前行下新开一行插入Open new lineA :当前行尾插入AppendI :当前行首插入InsertO ...

  3. Spring整合Redis(spring-data-redis)

    历经几天看了大量的博客资料,差不多算是搞定了,目前只是针对单个数据源,集群暂时没研究 maven依赖 <properties> <!-- redis 版本 --> <re ...

  4. css基础:样式属性

    1.背景与前景:background-color::背景色,样式表优先级高. background-image:url(路径):设置背景图片 background-attachment:fixed:背 ...

  5. ==与equal

    @ 对象类型比较:(引用类型) ==和equal都表示对象引用的内存地址是否相同 对象类型继承Object并重写方法equal()用于对象的比较 @ 字符串比较: ==表示String引用的内存地址是 ...

  6. 关于用VMware克隆linux系统后,无法联网找不到eth0网卡的问题

    当使用克隆后的虚拟机时发现系统中的网卡eth0没有了,使用ifconfig -a会发现只有eth1.因为系统是克隆过来的,原有的eth0以及ip地址都是原先网卡的,VMware发现已经被占用,就会创建 ...

  7. 改变input光标颜色与输入字体颜色不同

    设置input css: color #ffd600text-shadow 0px 0px 0px #bababa -webkit-text-fill-color initial input, tex ...

  8. memcache的原理和命中率的总结

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt267 1       Memcache是什么Memcache是danga.c ...

  9. Run Logic

    1.lr_output_message()函数,其作用是将内容输出到Replay Log中: 如果输出整数型内容,应该这样写; int x; x=10; lr_output_message(" ...

  10. shell脚本编程基础

       最近学习了shell脚本编程,感觉自己的脚本写的不太好,所以想把shell脚本相关的知识系统的整理一下,便于以后的学习和使用. 一.shell脚本基础    shell脚本是利用shell的功能 ...