Centos 6下使用cmake编译安装MariaDB

摘要:
对于CentOS6,使用yum安装。默认情况下,yum源提供MySQL的低版本。因此,当我们想安装MariaDB时,我们需要使用编译和安装。到达CentOS7后,您可以使用yum源代码直接跟踪MariaDB。makemakeinstall安装完成后,1.MariaDB添加环境变量vim/etc/profile。d/mysql Sh exportPATH=$PATH:/usr/local/mysql/bin#添加此内容。/etc/profile。d/mysql。sh#重新加载以使其生效。这个sh必须结束,否则只有当前会话才会生效。

写在前面

最近在学习Maria DB,为了方便查阅,又为了将所学的知识重新的梳理,特作此随笔一篇,希望过后阅读时能有所感,也希望对大家能够有所帮助。

安装前的准备

大家都知道,在Linux上安装软件一共有三种方式:1、rpm包安装 。2、二进制程序包安装。3、源码编译安装。对于前2种方式安装起来会便捷不少,但是定制化程度低,当我们需要进行软件diy时,那么编译安装就再合适不过了。

对于CentOS 6 来说,使用yum安装,yum源里面默认提供的是低版本MySQL,因此当我们想要安装Maria DB时,则需要使用编译安装。到CentOS 7后,可以使用yum源直接按照MariaDB。

1、依赖的库和包

在编译之前,我们需要安装一些以来的库和包

yum -y groupinstall "Development tools" "Server Platform Development" #这两个库中包含很多常用的软件,例如openssl-devel、bison等
yum -y install cmake lrzsz #此处的lrzsz是一个用于物理机和虚拟机之间传输文件的软件,后面要将软件包从物理机中拷贝到虚拟机中。

2、其他相关的设置

grouped -r -g 306mysql    #添加一个系统组
useraddd -r -u 306 -g 306mysql  #添加一个系统用户并且加入对应的系统组中
mkdir -p /data/mysql    #为MariaDB设置对应目录
chown -R mysql.mysql /data/mysql  #改变对应的属组属主,以便写入数据

安装mariaDB

1、解压到制定文件夹

rz     #由于此处MariaDB是放到物理机桌面的,因此使用此命令进行传输
tar -xf mariadb-10.0.13.tar.gz 
cd mariadb-10.0.13.tar.gz

2、安装

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql   #安装目录为/usr/local/mysql,其中mysql目录可以不事先建立。
-DMYSQL_DATADIR=/data/mysql          #数据存储的目录,需要事先建立,并且设置好属主属组,方便对应的属主属组读写数据
-DWITH_XTRADB_STORAGE_ENGINE=1        #默认已存在CSV和MyISAM存储引擎,因此加入FEDERATEDX、ARCHIVE、MYISAM、INNOBASE、BLACKHOLE存储引擎。其中innoDB最常用。
-DWITH_FEDERATEDX_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITH_READLINE=1
-DWITH_SSL=system               #加入ssl、zlib库 
-DWITH_ZLIB=system
-DDEFAULT_CHARSET=utf8            #设置字符集
-DDEFAULT_COLLATION=utf8_general_ci      #设置排序方式

注:当此步骤出现

-- Configuring done
-- Generating done

” 时,即可进行下一步安装。

此步骤会生成一个"CMakeCache.txt"文件,当出现问题时,需要将其删除后重新编译。

make

make install

安装完成后

1、MariaDB加入环境变量  

vim /etc/profile.d/mysql.sh
  export PATH=$PATH:/usr/local/mysql/bin  #加入此内容
. /etc/profile.d/mysql.sh    #重新加载,使其生效,必须使.sh结尾,否则仅仅当前会话生效。

2、设置配置文件并初始化

chown -R mysql.mysql /usr/local/mysql #设置属主和数组,方便写入配置文件
cd /usr/local/mysql cp support-files/my-large.cnf /etc/my.cnf #添加配置文件,并且在[mysqld]中加入下面三行配置信息   "datadir=/data/mysql/   innodb_file_per_table=on   skip_name_resolve=on" scripts/mysql_install_db --user=mysql --datadir=/data/mysql #注意:此初始化脚本必须在/usrl/local/mysql这个目录中执行,否则会报错。
初始化后,数据目录会有一些原始数据

ls /data/mysql/
aria_log.00000001 ib_logfile0 mysql-bin.000001 mysql-bin.state
aria_log_control ib_logfile1 mysql-bin.000002 performance_schema
ibdata1 mysql mysql-bin.index test

3、加入系统启动项

 cp support-files/mysql.server /etc/init.d/mysqld    
 chmod +x /etc/init.d/mysqld   #给脚本增加执行权限
 chkconfig mysqld on #加入开机启动项

4、MariaDB用户安全初始化

 /usr/local/mysql/bin/mysql_secure_installation 
#此步骤会设置root密码、禁止root远程登录、移除一名用户,删除测试数据库,并且重新加载授权表。根据自己喜好选择即可。
PS:当MariaDB启动时,才开始进行此操作。

5、登录操作

[root@mycentos ~]# mysql -uroot -p     #登录命令,以root用户登录,密码为上一步操作所设置的。
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or g.
Your MariaDB connection id is 15
Server version: 10.0.13-MariaDB-log Source distribution  #此处为MariaDB的版本
Copyright (c) 2000, 2014, Oracle, SkySQL Ab and others.
Type 'help;' or 'h' for help. Type 'c'to clear the current input statement.
  
MariaDB [(none)]>   #已经进入数据库,完成编译安装!!!

免责声明:文章转载自《Centos 6下使用cmake编译安装MariaDB》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Simulink仿真入门到精通(九) Simulink的流控制常见的Navicat Cloud帐号问题下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Application.mk文件官方使用说明

本文档介绍了 ndk-build 所使用的 Application.mk 编译文件。 我们建议先阅读概念页面,然后再阅读本页面。 概览 Application.mk 指定了 ndk-build 的项目范围设置。默认情况下,它位于应用项目目录中的 jni/Application.mk下。 注意:其中许多参数也具有模块等效项。例如,APP_CFLAGS 对应...

国产系统安装docker-ce、配置mysql

银河麒麟安装docker 一、安装 添加用户组和用户,非root启动docker groupadd docker useradd -m -g docker docker -s /sbin/nologin 添加权限 sudo tee /etc/sudoers.d/docker >/dev/null <<EOF docker ALL=(AL...

xampp默认mysql数据库root密码的修改

因为安装xampp后的mysql默认用户root的密码为空,而比如部署Testlink时需要提供数据库密码,此时就需要给root设定密码(网上有些方法,大同小异,但是可能都未标明关键点,未一些出上手的童鞋造成了不成功)。 如下介绍两个方法: 方法一:通过phpmyadmin xampp也是通过phpmyadmin管理的,所以我们能登录到phpmyad...

MySQL存储过程之事务管理

  MySQL存储过程之事务管理 ACID:Atomic、Consistent、Isolated、Durable 存储程序提供了一个绝佳的机制来定义、封装和管理事务。 1,MySQL的事务支持 MySQL的事务支持不是绑定在MySQL服务器本身,而是与存储引擎相关: Java代码 1         MyISAM:不支持事务,用于只读程序提高性能 ...

如何查看Oracle,MySQL,SQLServer三大数据库的事务隔离级别

1:mysql的事务隔离级别查看方法 mysql 最简单,执行这条语句就行:select @@tx_isolation 详情: 1.查看当前会话隔离级别 select @@tx_isolation; 2.查看系统当前隔离级别 select @@global.tx_isolation; 3.设置当前会话隔离级别 set session transactio...

mysql安装和遇到的问题处理

遇到需要在新系统上安装MySQL的事情,简单记录一下过程。 声明:最好的文档是官方文档,我也是看的官方文档,只是中间遇到点问题,记录一下出现的问题和处理方式。贴一些官方文档地址。 用tar包的安装方式:https://dev.mysql.com/doc/refman/5.7/en/binary-installation.html 用yum源等其他安装方式:...