Centos 6下使用cmake编译安装MariaDB
写在前面
最近在学习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 mysql #添加一个系统组
useraddd -r -u -g mysql #添加一个系统用户并且加入对应的系统组中 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
Server version: 10.0.-MariaDB-log Source distribution #此处为MariaDB的版本 Copyright (c) , , 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的更多相关文章
- CentOS下使用cmake编译安装mysql
一.下载安装所必需的依赖包 1.因为高版本mysql都用cmake安装,所以下载cmake wget http://www.cmake.org/files/v3.0/cmake-3.0.1.tar.g ...
- 在 Linux 下用 CMAKE 编译安装 OpenCV 3.2.0
[安装相关软件和库] 1.安装CMAKE:这里使用apt-get来安装; CMAKE 是一个跨平台编译工具,能够输出各种makefile,和project 文件,指导编译器编译,对CMAKE具体的可以 ...
- CentOS 6.6 下源码编译安装MySQL 5.7.5
版权声明:转自:http://www.linuxidc.com/Linux/2015-08/121667.htm 说明:CentOS 6.6 下源码编译安装MySQL 5.7.5 1. 安装相关工具# ...
- 在centos上编译安装mariadb数据库
一.安装前提(准备数据文件.安装其他依赖的软件) 1.准备数据存放的目录 [root@localhost ~]# fdisk /dev/sdb (fdisk /dev/sdb 创建一个逻辑分区/de ...
- linux下编译安装MariaDB 10.4.7,解决错误:cannot access ‘/auth_pam_tool_dir’: No such file or directory
编译安装MariaDB 10.4.7,前面的步骤我就不复述了,一切正常没什么问题. 当执行到:scripts/mysql_install_db --basedir=/usr/local/mysql - ...
- Windows下CMake编译安装OpenCV
Windows下CMake编译安装OpenCV 这是一个面向新手的在windows上运进opencv, helloword的教程. 在这里我们使用vs2019来编译opencv, 并运行一个hello ...
- CentOS 7上源码编译安装和配置LNMP Web+phpMyAdmin服务器环境
CentOS 7上源码编译安装和配置LNMP Web+phpMyAdmin服务器环境 什么是LNMP? LNMP(别名LEMP)是指由Linux, Nginx, MySQL/MariaDB, PHP/ ...
- CentOS_5.6下使用cmake编译MySQL_5.5.11教程
注:资料来自网络 Centos 5.6编译安装mysql 5.5.11 2011年06月24日 星期五 05:33 MySQL 最新的版本5.5.11需要cmake编译安装,估计以后的版本也会采 ...
- CentOS7编译安装MariaDB
一.环境信息: 操作系统版本:CentOS Linux release 7.3.1611 (Core) 内核版本:3.10.0-514.el7.x86_64 MariaDB版本:mariadb-10. ...
随机推荐
- Spring框架之事务管理
Spring框架之事务管理 一.事务的作用 将若干的数据库操作作为一个整体控制,一起成功或一起失败. 原子性:指事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生. 一致性:指事务前后 ...
- MSIL实用指南-struct的生成和操作
struct(结构)是一种值类型,用于将一组相关的信息变量组织为一个单一的变量实体.所有的结构都继承自System.ValueType类,因此是一种值类型,也就是说,struct实例分配在线程的堆栈( ...
- .Net Core 2.2与Java 12性能对比
我发现基准游戏(https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/csharp.html)是一套非常好的基准测试. ...
- Spring系列(五):Spring AOP源码解析
一.@EnableAspectJAutoProxy注解 在主配置类中添加@EnableAspectJAutoProxy注解,开启aop支持,那么@EnableAspectJAutoProxy到底做了什 ...
- 四种为HttpClient添加默认请求报头的解决方案
HttpClient在Web调用中具有广泛的应用,而为它添加默认请求头是我们经常遇到的需求,本文介绍4种为HttpClient添加默认请求头的方式. 第一种方式 直接在创建的HttpClient对象的 ...
- C#开发BIMFACE系列17 服务端API之获取模型数据2:获取构件材质列表
系列目录 [已更新最新开发文章,点击查看详细] 在上一篇<C#开发BIMFACE系列16 服务端API之获取模型数据1:查询满足条件的构件ID列表>中介绍了获取单文件(模型)的所有 ...
- Codeforces 938D Buy a Ticket
Buy a Ticket 题意要求:求出每个城市看演出的最小费用, 注意的一点就是车票要来回的. 题解:dijkstra 生成优先队列的时候直接将在本地城市看演出的费用放入队列里, 然后直接跑就好了, ...
- poj3666 Making the Grade(基础dp + 离散化)
Description A straight dirt road connects two fields on FJ's farm, but it changes elevation more tha ...
- Atcoder D - Black and White Tree(树dp+博弈)
题目链接:http://agc014.contest.atcoder.jp/tasks/agc014_d 题意:有一棵树先手涂白色,后手涂黑色,直到不能再涂为止.涂完后再把所有黑色直接相邻的白色都变成 ...
- Quartz.Net使用教程
在项目的开发过程中,难免会遇见后需要后台处理的任务,例如定时发送邮件通知.后台处理耗时的数据处理等,这个时候你就需要Quartz.Net了. Quartz.Net是纯净的,它是一个.Net程序集,是非 ...