虽然网上有很多的lnmp一键安装包,可以直接安装集成环境。

但是有时候我们需要单独的安装mariadb,则可以使用下面的脚本来安装。

# 一键CMAKE编译安装mariadb-10.0.12

# 安装到/usr/local/mariadb

# 数据目录为/data/mysql

# my.cnf文件是我自己修改的

一键安装包的文件目录结构如下:

我们只要自己将下面的文件组合成上图的结构,执行sh install.sh脚本即可完成安装。

install.sh脚本内容如下:

#!/bin/bash

# Date: 2016/08/03

# Author: Lee

# 一键CMAKE编译安装mariadb-10.0.12

# 安装到/usr/local/mariadb

# 数据目录为/data/mysql

# my.cnf文件是我自己修改的

echo -e "\033[32m即将安装MariaDB到 /usr/local \033[0m"

echo -e "\033[32m数据目录为/data/mysql,请确保有足够的空间存放数据\033[0m"

echo -e "\033[31m你有10秒钟的时间取消该操作(按ctrl+c取消)\033[0m"

echo

sleep 10

if [ ! -f src/mariadb-10.0.12.tar.gz ];then

echo -e "\033[31m不存在mariadb-10.0.12包.Quit\033[0m"

exit

fi

tar xf src/mariadb-10.0.12.tar.gz -C src/

cd src/mariadb-10.0.12

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mariadb \

-DSYSCONFDIR=/etc \

-DWITH_ARIA_STORAGE_ENGINE=1 \

-DWITH_XTRADB_STORAGE_ENGINE=1 \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_PARTITION_STORAGE_ENGINE=1 \

-DWITH_MYISAM_STORAGE_ENGINE=1 \

-DEXTRA_CHARSETS=all \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DWITH_READLINE=1 \

-DWITH_SSL=bundled \

-DWITH_ZLIB=system \

-DWITH_EMBEDDED_SERVER=1 \

-DENABLED_LOCAL_INFILE=1

make && make install

groupadd mariadb

useradd -r -s /sbin/nologin -g mariadb mariadb

chown mariadb.mariadb /usr/local/mariadb -R

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

chmod +x /etc/init.d/mariadb

\cp ../../my.cnf /etc/my.cnf

mkdir /data/mysql -p

chown mariadb.mariadb /data/mysql -R

/usr/local/mariadb/scripts/mysql_install_db --user=mariadb --basedir=/usr/local/mariadb --datadir=/data/mysql

/etc/init.d/mariadb start

if ss -lnt|grep 3306 --color=auto ;then

echo -e "\033[32mMariaDB已启动.\n默认server-id为1. \033[0m"

echo -e "\033[31m在主从或主主复制环境下请修改server-id并重启MariaDB!!\033[0m"

fi

优化后的my.cnf配置文件:

[client]

user = root

#password   = your_password

port        = 3306

socket      = /tmp/mysql.sock

[mysql]

default_character_set = utf8

prompt = [\d] >

[mysqld]

####basic####

user = mariadb

port  = 3306

socket  = /tmp/mysql.sock

datadir = /data/mysql/

basedir = /usr/local/mariadb/

pid_file = /var/run/mysql.pid

default_storage_engine = InnoDB

# others setting

skip_name_resolve = ON

skip_external_locking

character-set-server = utf8

# Timeout

connect_timeout = 20

wait_timeout = 14400

interactive_timeout = 14400

back_log = 500

myisam_recover

event_scheduler = ON

# Query Cache Setting

query_cache_type = OFF

query_cache_size = 0

# LOG Settings

server-id = 1

log-bin = mysql.bin

binlog_format = mixed

max_binlog_size = 1G

expire_logs_days = 10

binlog_cache_size = 8M

slow_query_log = ON

slow_query_log_file = /data/mysql/localhost_slow.log

long_query_time = 5

log_error = /data/mysql/localhost.error

log_warnings = 2

tmp_table_size = 32M

max_heap_table_size = 32M

max_connections = 1000

max_allowed_packet = 50M

thread_cache_size = 300

open_files_limit = 65535

# 可以设置的比Open_tables大一倍

table_open_cache = 4096

# InnoDB Optimize

innodb_file_per_table = ON

innodb_flush_log_at_trx_commit = 1

innodb_log_buffer_size = 32M

# innodb_buffer_pool_size官方建议设置为内存大小的50%~80%

innodb_buffer_pool_size = 4G

# 事务日志文件的大小

innodb_log_file_size = 512M

# Innodb共享表空间的大小

innodb_data_file_path = ibdata1:1G:autoextend:max:2G

innodb_buffer_pool_instances = 8

innodb_write_io_threads = 8

innodb_read_io_threads = 8

innodb_buffer_pool_dump_at_shutdown = ON

innodb_buffer_pool_load_at_startup = ON

[mysqldump]

quick

max_allowed_packet = 48M

[mysql]

no-auto-rehash

# Remove the next comment character if you are not familiar with SQL

#safe-updates

[myisamchk]

key_buffer_size = 256M

sort_buffer_size = 256M

read_buffer = 2M

write_buffer = 2M

[mysqlhotcopy]

interactive-timeout

Linux一键编译,linux下一键编译安装MariaDB10.0.12相关推荐

  1. linux下一键编译安装MariaDB10.0.12

    虽然网上有很多的lnmp一键安装包,可以直接安装集成环境. 但是有时候我们需要单独的安装mariadb,则可以使用下面的脚本来安装. # 一键CMAKE编译安装mariadb-10.0.12 # 安装 ...

  2. ubuntu12.4上安装minigui3.0.12

    在ubuntu12.4上安装minigui3.0.12 一下载源文件 移植所需的文件可以从minigui官网下载:http://www.minigui.org/en/download/ 主要文件有: ...

  3. 【Linux学习】Ubuntu下内核编译(一)

    (1)当要运行内核配置时,输入make menuconfig时出现错误 遇到这个问题,主要是以为没有ncurses库,而make menconfig 须要这个库.因此须要安装ncurses或者ncur ...

  4. linux xfs yum,Redhat下XFS的安装

    一.XFS 简介及特性 XFS 最初是由 Silicon Graphics,Inc. 于 90 年代初开发的.那时,SGI 发现他们的现有文件系统(existing filesystem,EFS)正在 ...

  5. nwjs sdk linux x64,Ubuntu环境下的nwjs安装及使用教程

    需求:通过nwjs实现一个可以全屏显示,防止用户退出浏览器的演示用app 一.安装Node.js sudo apt-get install nodejs sudo apt-get install np ...

  6. 编译安装mariadb-10.0.10

    安装cmake centos上编译mariadb5.5以上的需要至少cmake2.6,如果是rpm包,则需要至少cmake2.8.7以上. [root@school ~]# tar xf cmake- ...

  7. cenotos 卸载mysql_CentOS 6.2编译安装Nginx1.0.12+MySQL5.5.21+PHP5.3.10 | 系统运维

    说明: 操作系统:CentOS 6.2 32位 系统安装教程:CentOS 6.2安装(超级详细图解教程)准备篇: 一.配置好IP.DNS .网关,确保使用远程连接工具能够连接服务器 CentOS 设 ...

  8. win10下RTX 2080ti安装cuda10.0和cudnn7.6.5

    1 安装显卡驱动 在NVIDIA官网上下载显卡驱动,并进行安装 NVIDIA官网下载页面 2 安装cuda10.0 在cuda历史版本列表中下载cuda10.0 cuda10.0下载链接 下载完成后安 ...

  9. windows安装mysql修改密码_1、Windows下安装mysql-8.0.12及修改初始密码

    1. 解压压缩包,放置到任意目录 注意目录最好是英文 这是我的目录: D:\Python\mysql-8.0.12-winx64\ 2. 初始化 用管理员权限打开CMD或者Windows Powers ...

最新文章

  1. 宏基因组合种树,2-4天领证,1/2号车满员,3号车成立,机会来了
  2. Flex警告:framework.swc”具有默认样式并且在 library-path 中,表...
  3. 【 Vivado 】输入延迟约束实例
  4. 2018年视觉所有干货博文的分类汇总
  5. 漫画:图的 “最短路径” 问题 | 技术头条
  6. 认知智能,AI 的下一个十年 | AI Procon 2020
  7. EVEREST Ultimate Edition 4.50 Build 1330 Final
  8. 第一次失效_直击震撼场面!宁乡新沩丰坝建成以来第一次高水位应急演练!
  9. Mysql插入中文的字段内容时乱码的解决方法
  10. 有哪些让程序员受益终生的建议
  11. c语言按键长按双击,51单片机实现单按键单击、双击、长按功能
  12. 量子统计中的涨落和时间关联函数的概念(谐振子例子)
  13. 23个海外求职找各种工作的招聘网站
  14. 储存管理系统c语言,《C语言,图书管理系统,未做文件储存系统.docx
  15. Android产品研发(十六)--开发者选项
  16. C# 程序集(Assembly)
  17. 【LINUX】libgd-GD库安装
  18. ernel 3.10内核源码分析--KVM相关--虚拟机运行
  19. ajax提交成功清空表单,Ajax提交数据后,清空form表单
  20. 分享和推广产品是成功淘宝客的技巧

热门文章

  1. 【EASYDOM系列教程】之属性操作
  2. “OpAfrica”行动:匿名者攻击南非武器采购机构
  3. Spring实战——无需一行xml配置实现自动化注入
  4. Javascript定义类(class)的三种方法
  5. 从0开始写JavaWeb框架系列(1)从0开始写SamrtFrameWork:读取配置文件
  6. canvas绘图粒子扩散效果【原创】
  7. 分享:玩Linux笔记(2) —— 神奇的curl工具
  8. 联通最全最新路由表【两种表示方式都在】
  9. UltraEdit搭建python IDE环境+设置快捷键
  10. Linux 命令(80)—— chown 命令