mysql mariadb 安装_mysql兼mariadb安装过程详解

mysql mariadb 安装_mysql兼mariadb安装过程详解mysql兼mariadb下载自己找自己对应的版本:https://dev.mysql.com/downloads/mysql/因为5.5以后都用cmake编译了,所以系统里没有的话,就下个源码的装一下,怎么测试系统里有没有装了,在命令行中输入#cma在按Tab看有没有cmake有的话系统就装过了,就不用在装了。没有话就去下个吧,下载地址:https://cmake.org/downloa…

大家好,又见面了,我是你们的朋友全栈君。

mysql兼mariadb下载自己找自己对应的版本:

https://dev.mysql.com/downloads/mysql/

因为5.5以后都用cmake编译了,所以系统里没有的话,就下个源码的装一下,怎么测试系统里有没有装了,在命令行中输入#cma  在按Tab看有没有cmake  有的话系统就装过了,就不用在装了。没有话就去下个吧,下载地址:https://cmake.org/download/

还要装boost才能装cmake,boost下载地址:https://sourceforge.net/projects/boost/files/boost/1.62.0/boost_1_62_0.tar.gz/download

boost安装过程:

tar xf boost_1_59_0.tar.gz

cd boost_1_59_0

./bootstrap.sh如果有提示的话就在装下依赖库yum install gcc  如果不出现“error: no command provided, default command ‘g++’ not found

”问题的话,

在发现该错误时,先在系统中确认是否缺失相对应的包:

rpm -qa | grep “g++”

在确认系统未安装之后,查询可安装的相对应的功能的包:

yum whatprovides “*/g++”

在把给出的包装上,

yum install gcc-c++-4.8.5-11.el7.x86_64

yum install ncurses-devel -y  安装mysql时要的安装环境,也许你的机器还有别的没装,仔细看看,直接yum 装下就好了

接着安装boost

./b2

结束

cmake安装过程:

tar xf cmake-3.8.0-rc3.tar.gz

cd cmake-3.8.0-rc3

./configure

gmake && gmake install

解压:tar xf tar xf mariadb-5.5.46.tar.gz

cd tar xf mariadb-5.5.46

cmake . -LH查看可以配置的选项,会生成CMakeCache.txt文件

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql

-DMYSQL_DATADIR=/data

-DSYSCONFDIR=/etc

-DWITHOUT_TOKUDB=1

-DWITH_INNOBASE_STORAGE_ENGINE=1

-DWITH_ARCHIVE_STPRAGE_ENGINE=1

-DWITH_BLACKHOLE_STORAGE_ENGINE=1

-DWIYH_READLINE=1 -DWIYH_SSL=system

-DVITH_ZLIB=system

-DWITH_LOBWRAP=0

-DMYSQL_UNIX_ADDR=/tmp/mysql.sock

-DDEFAULT_CHARSET=utf8

-DDEFAULT_COLLATION=utf8_general_ci

这里说明一下:-DCMAKE_INSTALL_PREFIX是指定安装的位置,这里是/usr/local/mysql,-DMYSQL_DATADIR是指定MySQL的数据目录,这里是/data,安装目录和数据目录都可以自定义设置,-DSYSCONFDIR是指定配置文件所在的目录,一般都是/etc ,具体的配置文件是/etc/my.cnf,-DWITHOUT_TOKUDB=1这个参数一般都要设置上,表示不安装tokudb引擎,tokudb是MySQL中一款开源的存储引擎,可以管理大量数据并且有一些新的特性,这些是Innodb所不具备的,这里之所以不安装,是因为一般计算机默认是没有Percona Server的,并且加载tokudb还要依赖jemalloc内存优化,一般开发中也是不用tokudb的,所以暂时屏蔽掉,否则在系统中找不到依赖会出现:CMake Error at storage/tokudb/PerconaFT/cmake_modules/TokuSetupCompiler.cmake:179 (message)这样的错误,然后后面那些参数都是可选的,可以加也可以不加,最后的编码建议设置一下,所以编译指令也可以简化成下面这样:

注意:如果万一执行中有了错误,可以执行: rm -f CMakeCache.txt 删除编译缓存,让指令重新执行,否则每次读取这个文件,命令修改正确也是报错

cmake没问题,可以编译并且安装了:

make && make install 时间有点长,耐心等待

接下来就是准备过程了:

首先我们来创建个mysql用户和mysql用户组,为什么要创呢?因为你启动服务的时候需要mysql用户来启动,别的用户还不行,你要问我为什么,那我可不知道,请去问 Michael Widenius

#groupadd -r mysql

#useradd -r -g mysql mysql

要给你的安装目录及数据目录改属主属组

chown -R mysql.mysql /usr/local/mysql

chown -R mysql.mysql /data

如果不改的话,之后你的服务肯定起不来的

接下来将配置文件和启动文件放入/etc目录 下

#cp /usr/local/mysql/support-files/my-huge.cnf /etc/my.cnf

#cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

修改配置文件将我的数据目录添加进去

vim /etc/my.cnf

[mysqld]

datadir = /data

添加PATH环境变量

vim /etc/profile.d/mysql.sh

export PATH=$PATH:/usr/local/mysql/bin

source /etc/profile.d/mysql.sh读取下,当前shell生效

接下来就是初始化数据库了:

初始化:

# /usr/local/mysql/mysqld –initialize –user=mysql      –mysql5.7版本初始化

# /usr/local/mysql/bin/mysql_install_db –user=mysql       –5.6到5.7版本

# /usr/local/mysql/scripts/mysql_install_db –user=mysql –datadir=/data –5.5版本

最后就是启动数据库了:

service mysqld start

设置开机启动:

chkconfig mysqld on

之后就可以连接数据库了:

mysql

mysql> SET PASSWORD FOR root@’localhost’=PASSWORD(‘mysql’);修改密码,不同的版本修改方式有点不同,可自己上网查下。

最后就是点小的问题解决方式:

如果没给数据目录权限的话就会出现以下的问题:

chown -R mysql:mysql datadir的位置

** 记得把之前的启动项关掉,要不然会占用PID文件,你会发现你启动不了过程

还有就是你的server-id 没有设置

killall mysqld

1、Starting MySQL.. ERROR! The server quit without updating PID file (/var/mysql/data/localhost.localdomain.pid).

像套接字文件也是这种问题:

2、ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)

3、可能是第二次在机器上安装mysql,有残余数据影响了服务的启动

解决方法:去mysql的数据目录看看,如果存在mysql-bin.index,就赶快把它删除掉吧。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/135156.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Java设计模式——策略模式[通俗易懂]

    Java设计模式——策略模式[通俗易懂]策略模式1.策略模式简介策略模式:策略模式是一种行为型模式,它将对象和行为分开,将行为定义为一个行为接口和具体行为的实现。策略模式最大的特点是行为的变化,行为之间可以相互替换。每个if判断都可以理解为就是一个策略。本模式使得算法可独立于使用它的用户而变化2.模式结构策略模式包含如下角色:Strategy:抽象策略类:策略是一个接口,该接口定义若干个算法标识,即定义了若干个抽象方法(如下图的algorithm())Context:环境类/上下文类:上下文是依赖于接口的类(

    2022年9月9日
    3
  • IntelliJ IDEA 修改内存大小,使得idea运行更流畅。

    IntelliJ IDEA 修改内存大小,使得idea运行更流畅。IntelliJIDEA使用教程(总目录篇)idea有个配置文件,可以设置内存大小的,就跟咱的jvm的内存里面的堆大小,栈大小等等,可以设置的,而且设置了之后,你这个的性能就会得到提升。具体看下面怎么修改。先说所要修改的文件idea.vmoptions的位置,这个不同的平台,估计名称可能有些差别。mac的如下图具体怎么找到这个地方的,刚刚使用mac的估计不会,老手就会啦,…

    2025年7月24日
    2
  • 获取impala下所有的数据库建表语句

    获取impala下所有的数据库建表语句本博文介绍三种方法,推荐使用第三种,前两种都是尝试。方法一:现在的导出还是有缺陷的,导出的文件中还是存在其他不必要的信息#!/bin/bash##获取数据库databases=$(hive-e”showdatabases;exit;”)fordatabasein$databases;do#获取hive建表语句tables=$(hive-e”use$database;showtables;”)for…

    2022年9月7日
    2
  • 外企入职第一封英文邮件_投外企要英文简历吗

    外企入职第一封英文邮件_投外企要英文简历吗   一份出色的Resume,是向外企求职的关键之一。不了解有关的常识和程式,不花费相当的心思来展示,以有纯正娴熟的英文功底,决不能获得单位的青睐。在一大堆错误百出、英文表达能力低劣或平庸,毫无针对性和创造性的Resume中,你的那份若能让人眼睛一亮,成功的机会必将大大增加,以下试着结合一个具体的例子给出说明和评述。   BalanceSheet:  基本方法选取适当的工作后,必须看清

    2022年10月20日
    2
  • 华硕笔记本 x550c 光驱位换固态硬盘

    华硕笔记本 x550c 光驱位换固态硬盘这两天给华硕笔记本(型号x550c)加装了个8G的内存条,并且给光驱位改装成了480G固态硬盘。内存条和固态硬盘都是在闲鱼上购买。加内存条内存条买的是海力士颗粒的8G1600Mhz,

    2022年7月2日
    57
  • k8s pod Evicted状态问题解决

    k8s pod Evicted状态问题解决kubectlgetpo-nkube-system-owide#查看pod运行状态信息可以看到有两个状态为驱赶,一般是磁盘空间不足了,清理slave磁盘空间后,状态正常

    2022年5月16日
    56

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号