zoukankan      html  css  js  c++  java
  • CentOS7下安装MariaDB

    环境: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.0-1.el7.x86_64.rpm

     

    sudo rpm -ivh jemalloc-devel-3.6.0-1.el7.x86_64.rpm

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

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

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

    sudo rpm -ivh galera-25.3.20-1.rhel7.el7.centos.x86_64.rpm

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

    解决方式是 yum 安装

    yum install boost-devel.x86_64

    奇迹又一次花生

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

    最后安装关键的 server

    sudo rpm -ivh MariaDB-10.2.8-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.5-8.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 (本文未使用这种方式而是作为借鉴和记录)
  • 相关阅读:
    等级,
    JS高阶---回调函数
    JS高阶---函数
    JS高阶---对象
    JS高阶---数据、变量、内存
    JS高阶---简介+数据类型
    JS里==和===区别
    vue中assets和static的区别
    vue2.0 实现导航守卫(路由守卫)---登录验证
    exports与module.exports,export与export default 之间的关系和区别
  • 原文地址:https://www.cnblogs.com/cinlap/p/7575721.html
Copyright © 2011-2022 走看看