+++++++++++++++++++++++++++++++++++++++++++
标题:MySQL数据库实力部署
时间:2019年3月9日
内容:MySQL源码包进行编译,然后部署MySQL单实例
重点:了解源码包编译过程,重点掌握MySQL单实例部署流程及注意事项
+++++++++++++++++++++++++++++++++++++++++++
1. MySQL源码包编译
1.1 安装编译环境
# yum install -y gcc gcc-c++
# yum install -y ncurses-devel.x86_64
# yum install -y libaio.x86_64
# yum install -y bison.x86_64
# yum install -y gcc-c++.x86_64
# yum install -y cmake.x86_64 //如果cmake版本过低,卸载低版本,安装高版本的cmake。
# wget http://nchc.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
# tar zxvf boost_1_59_0.tar.gz
# mv boost_1_59_0 /usr/local/boost

1.2 编译参数详解
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql #mysql编译安装目录
-DMYSQL_DATADIR=/home/mysql3306/mysql3306 #mysql默认数据目录
-DDEFAULT_CHARSET=utf8 #mysql默认编码
-DEXTRA_CHARSETS=all #编译其他编码
-DSYSCONFDIR=/etc #配置文件默认目录
-DENABLED_LOCAL_INFILE=1 #是否允许载入外部数据文件
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock #默认sock文件地址
-DDEFAULT_COLLATION=utf8_general_ci #默认排序规则
-DMYSQL_TCP_PORT=3306 #默认端口
-DMYSQL_USER=mysql #默认用户
-DWITH_MYISAM_STORAGE_ENGINE=1 #引擎支持
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITH_MEMORY_STORAGE_ENGINE=1
-DWITH_BOOST=/usr/local/boost #指定c++ boost库的位置

1.3 . MySQL软件编译
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/home/mysql3306/mysql3306 -DDEFAULT_CHARSET=utf8 -DEXTRA_CHARSETS=all -DSYSCONFDIR=/etc -DENABLED_LOCAL_INFILE=1 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock-DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_TCP_PORT=3306 -DMYSQL_USER=mysql -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_BOOST=/usr/local/boost
# make
# make install

2. MySQL单实例部署
2.1 配置MySQL安装环境
# useradd -s /sbin/nologin mysql //该用户不需要登录权限
# mkdir -p /data/mysql/mysql
# mkdir -p /data/mysql/logs
# chown -R mysql:mysql /data/mysql

2.2 配置MySQL配置文件
# cp my.cnf /etc/my.cnf
# vim /etc/my3306.cnf
修改配置文件中的与路径相关的参数
port = 3306
socket = /tmp/mysql3306.sock
datadir = /data/mysql/mysql
server-id = 441203306 //MySQL实例的唯一标号
innodb_buffer_pool_size = 256M //实验环境下,根据实际情况分配内存
其他参数则需要根据具体需求进行修改。

2.3 MySQL实例内存分配原则
单实例:建议单独部署在单独的服务器中,分配内存为服务器内存的75%。
多实例:建议核心节点单独部署在单独的服务器中,内存具体分配根据数据库服务器的压力决定。

2.4 MySQL实例初始化
# tar zxvf mysql-5.7.19.el6.tar.gz -C /usr/local/
# /usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --initialize-insecure --basedir=/usr/local/mysql --datadir=/data/mysql/mysql/ --user=mysql
注意:
--initialize mysql5.7初始化会创建随机密码;--initialize-insecure 初始化启动后没有密码。
MySQL5.6版本的数据库初始化脚本为mysql_install_db;MySQL5.7版本数据库初始化脚本为mysqld。
# /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql &
注意:启动时先指定配置文件
# ps -ef |grep mysql

2.5 配置MySQL环境变量
# vim /etc/profile
export MYSQL_HOME=/usr/local/mysql
export PATH=$MYSQL_HOME/bin:$PATH:$HOME/bin
# source /etc/profile

MySQL源码包编译安装的更多相关文章

  1. CentOS 7.2使用源码包编译安装MySQL 5.7.22及一些操作

    CentOS 7.2使用源码包编译安装MySQL 5.7.22及一些操作 2018年07月05日 00:28:38 String峰峰 阅读数:2614   使用yum安装的MySQL一般版本比较旧,但 ...

  2. CentOS 7.4 使用源码包编译安装MySQL 5.7.20

    使用yum安装的MySQL一般版本比较旧,但是运行稳定.如果想要尝试最新的功能或者需要指定特殊的功能的话,就需要手工进行编译安装了. 一.下载安装包 (一).先下载MySQL源码,网址为:https: ...

  3. LAMP 环境搭建之源码包编译安装

    mysql用的二进制包安装. Apache php 用的源码包 mysql版本5.5.46    Apache版本2.4.7  PHP版本:5.5 mysql安装部分参考了阿铭linux的内容. 这是 ...

  4. MYSQL5.7源码包编译安装

    Centos下用cmake编译安装MySQL 5.7安装依赖包yum -y install gcc gcc-c++ ncurses ncurses-devel cmake下载相应源码包cd /usr/ ...

  5. PHP-5.6.8 源码包编译安装

    一.下载源码包后,进行解压 [root@www home]# .tar.bz2 gzip: stdin: not in gzip format tar: Error is not recoverabl ...

  6. MYSQL5.5源码包编译安装

    MYSQL5.5源码安装首先安装必要的库yum -y install gcc*###### 安装 MYSQL ######首先安装camke 一.支持YUM,则yum install -y cmake ...

  7. 02.LNMP架构-MySQL源码包编译部署详细步骤

    操作系统:CentOS_Server_7.5_x64_1804.iso 部署组件:Cmake+Boost+MySQL 操作步骤: 一.安装依赖组件 [root@localhost ~]# yum -y ...

  8. mysql源码包手动安装、配置以及测试(亲测可行)

    笔记编者:小波/qq463431476博客首页:http://www.cnblogs.com/xiaobo-Linux/ 记下这篇mysql笔记,望日后有用! redhat6采用centos yum源 ...

  9. MYSQL5.6源码包编译安装

    linux下用cmake编译安装mysql-5.6.35cmake编译安装mysql的方法:#useradd -M mysql -s /sbin/nologin#yum install -y cmak ...

随机推荐

  1. 第57章 GrantValidationResult - Identity Server 4 中文文档(v1.0.0)

    该GrantValidationResult类模型补助确认为扩展授权和资源所有者密码授权的结果. 最常见的用法是使用身份验证(成功用例): context.Result = new GrantVali ...

  2. JS的splice()方法在for循环中使用可能会遇到的坑

    在写JS代码时,我们常常使用 splice 函数来删除数组中的元素,因为 splice 函数会直接对数组进行修改,从而不需再自己写一个算法来移动数组中的其他元素填补到被删除的位置.splice 功能十 ...

  3. VSTO中Word转换Range为Image的方法

    VSTO中Word转换Range为Image的方法 前言 VSTO是一套用于创建自定义Office应用程序的Visual Studio工具包,通过Interop提供的增强Office对象,可以对Wor ...

  4. Nginx 初識

    今天簡單了解了一下Nginx,并在本機安裝,并簡單配置了一下,道理什麼的還不懂,就是看能不能跑起來. 1.安裝從官網下載就好,把文件隨便解壓在一個英文目錄裡面. 然後修改配置文件,修改的內容如下: 2 ...

  5. HTML5 Video player jQuery plugin

    <!DOCTYPE html> <html lang="en" > <head> <meta charset="utf-8&qu ...

  6. ES5新增

    forEach // forEach 返回undefined var arr = ['Prosper', 'Lee', 'is', ['very', 'very'], 'nice', '!', , n ...

  7. float与double

    对数值类型的细节了解在大学里就是一带而过,自己始终也没好好看过.这是在csdn上看到的一篇文章,挺好的,记录下来. https://blog.csdn.net/Demon__Hunter/articl ...

  8. 【自动化测试&爬虫系列】Selenium Webdriver

    文章来源:公众号-智能化IT系统. 一. Selenium Webdriver技术介绍 1. 简介 selenium Webdriver是一套针对不同浏览器而开发的web应用自动化测试代码库.使用这套 ...

  9. 推荐一款MongoDB的客户端管理工具--nosqlbooster

    今天给大家推荐一款MongoDB的客户端工具--nosqlbooster,这个也是我工作中一直使用的连接管理MongoDB的工具.这个工具还有个曾用名--mongobooster.nosqlboost ...

  10. 我的ElasticSearch之ElasticSearch安装配置环境

    最近一段时间比较忙,都很少来园子逛了,刚好,用到了ElasticSearch,感觉还不错,所以就给大家推荐一下,自己也顺便学习:虽然公司选择用ElasticSearch,但是以前都没有用过这个,而且公 ...