CentOS7 编译安装 Mariadb (实测 笔记 Centos 7.0 + Mariadb 10.0.15)
环境:
系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡)
系统版本:CentOS-7.0-1406-x86_64-DVD.iso
安装步骤:
1.准备
1.1 显示系统版本
[root@centos ~]# cat /etc/redhat-release
CentOS Linux release 7.0.1406 (Core)
[root@centos ~]# uname -a
Linux tCentos7 3.10.0-123.9.3.el7.x86_64 #1 SMP Thu Nov 6 15:06:03 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
1.2 安装基本软件包
[root@centos ~]# yum install vim wget lsof gcc gcc-c++ -y
[root@centos ~]# yum install net-tools bind-utils -y
1.3 显示IP地址 (centos7需要先安装 net-tools bind-utils包)
[root@centos ~]# ifconfig|grep inet
inet 192.168.1.10 netmask 255.255.255.0 broadcast 192.168.1.255
2.安装mariadb
2.1 安装依赖
[root@centos ~]# yum install ncurses-devel openssl* bzip2 m4 -y
2.2 安装cmake
[root@centos ~]# cd /usr/local/src/
[root@centos ~]# tar zvxf cmake-3.0.0.tar.gz
[root@centos ~]# cd cmake-3.0.0
[root@centos ~]# ./bootstrap
[root@centos ~]# make && make install
2.3 安装bison(需要 m4 库)
[root@centos ~]# cd /usr/local/src/
[root@centos ~]# tar zvxf bison-3.0.tar.gz
[root@centos ~]# cd bison-3.0
[root@centos ~]# ./configure
[root@centos ~]# make && make install
2.4 安装jemalloc(需要 bzip2 库解压)
[root@centos ~]# cd /usr/local/src/
[root@centos ~]# tar xjf jemalloc-3.6.0.tar.bz2
[root@centos ~]# cd jemalloc-3.6.0
[root@centos ~]# ./configure
[root@centos ~]# make && make install
[root@centos ~]# echo '/usr/local/lib' > /etc/ld.so.conf.d/local.conf
[root@centos ~]# ldconfig
2.5 创建mysql需要的目录、配置用户和用户组
[root@centos ~]# groupadd mysql
[root@centos ~]# useradd -g mysql mysql -s /sbin/nologin
[root@centos ~]# mkdir -p /data/mysql
[root@centos ~]# chown -R mysql:mysql /data/mysql
2.6 编译mariadb(需要 cmake ncurses-devel bison 库)
[root@centos ~]# cd /usr/local/src/
[root@centos ~]# tar zvxf mariadb-10.0.15.tar.gz
[root@centos ~]# cd mariadb-10.0.15
[root@centos ~]# cmake -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DCMAKE_INSTALL_PREFIX=/opt/mysql -DMYSQL_DATADIR=/data/mysql -DMYSQL_TCP_PORT=3306 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_READLINE=1 -DWITH_EXTRA_CHARSETS=all -DEXTRA_CHARSETS=all -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_LIBWRAP=0 -DENABLED_LOCAL_INFILE=1 -DEXTRA_CHARSETS=all
# 编译说明
# -DCMAKE_INSTALL_PREFIX=/usr/local/mariadb # 安装根目录
# -DMYSQL_DATADIR=/usr/local/mariadb/data/ # 数据存储目录
# -DMYSQL_UNIX_ADDR=/usr/local/mariadb/tmp/mysqld.sock # UNIX socket文件
# -DDEFAULT_CHARSET=utf8 # 默认字符集
# -DDEFAULT_COLLATION=utf8_general_ci # 默认字符校对
# -DMYSQL_TCP_PORT=3306 # TCP/IP端口
# -DWITH_READLINE=1 # readline库
# -DENABLED_LOCAL_INFILE=1 # 启用加载本地数据
# -DWITH_EXTRA_CHARSETS=all # 扩展支持编码 ( all | utf8,gbk,gb2312 | none )
# -DEXTRA_CHARSETS=all # 扩展字符支持
# -DWITH_MYISAM_STORAGE_ENGINE=1 # Myisam 引擎支持
# -DWITH_INNOBASE_STORAGE_ENGINE=1 # innoDB 引擎支持
# -DWITH_XTRADB_STORAGE_ENGINE=1 # XTRADB 支持
# -DWITH_ARIA_STORAGE_ENGINE=1 # ARIA 引擎支持
# -DWITH_ARCHIVE_STORAGE_ENGINE=1 # ARCHIVE 引擎支持
# -DWITH_BLACKHOLE_STORAGE_ENGINE=1 # BLACKHOLE 引擎支持
# -DWITH_FEDERATEDX_STORAGE_ENGINE=1 # FEDERATEDX 引擎支持
# -DWITH_PARTITION_STORAGE_ENGINE=1 # PARTITION 引擎支持
# -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 # PERFSCHEMA 引擎支持
# -DWITH_SPHINX_STORAGE_ENGINE=1 # SPHINX 引擎支持
# -DCMAKE_EXE_LINKER_FLAGS="-ljemalloc" -DWITH_SAFEMALLOC=OFF #Jemalloc内存管理库
[root@centos ~]# make
[root@centos ~]# make install
2.7 创建软连接
[root@centos ~]# ln -s /opt/mysql/lib/lib* /usr/lib/
[root@centos ~]# ln -s /opt/mysql/bin/mysql /bin
2.8 修改配置文件
[root@centos ~]# cd /opt/mysql
[root@centos ~]# cp ./support-files/my-large.cnf /etc/my.cnf
[root@centos ~]# vim /etc/my.cnf
在[client]下添加一行
default-character-set = utf8
在[mysqld]下添加一行
datadir = /data/mysql
character-set-server = utf8
保存退出
2.9 修改服务启动检测文件
[root@centos ~]# cp /usr/local/src/mariadb-10.0.15/packaging/rpm-oel/mysql-systemd-start /opt/mysql/bin/
[root@centos ~]# chmod 755 /opt/mysql/bin/mysql-systemd-start
[root@centos ~]# vim ./bin/mysql-systemd-start
找到以下内容
datadir=$(/usr/bin/my_print_defaults server mysqld | grep '^--datadir=' | sed -n 's/--datadir=//p')
修改为
datadir=$(/opt/mysql/bin/my_print_defaults server mysqld | grep '^--datadir=' | sed -n 's/--datadir=//p')
找到以下内容
/usr/bin/mysql_install_db --rpm --datadir="$datadir" --user=mysql
修改为
/opt/mysql/scripts/mysql_install_db --rpm --basedir=/opt/mysql --datadir="$datadir" --user=mysql
找到以下内容
mysqladmin ping >/dev/null 2>&1 && break
修改为
/opt/mysql/bin/mysqladmin ping >/dev/null 2>&1 && break
保存退出
2.10 设置mysql开机自动启动服务
[root@centos ~]# cp /usr/local/src/mariadb-10.0.15/packaging/rpm-oel/mysqld.service /lib/systemd/system
[root@centos ~]# systemctl enable mysqld.service
[root@centos ~]# systemctl list-unit-files|grep enabled|grep mysql
[root@centos ~]# vim /etc/systemd/system/mysql.service
找到以下内容
ExecStartPre=/usr/bin/mysql-systemd-start pre
修改为
ExecStartPre=/opt/mysql/bin/mysql-systemd-start pre
找到以下内容
ExecStart=/usr/bin/mysqld_safe
修改为
ExecStart=/opt/mysql/bin/mysqld_safe
找到以下内容
ExecStartPost=/usr/bin/mysql-systemd-start post
修改为
ExecStartPost=/opt/mysql/bin/mysql-systemd-start post
找到以下内容
TimeoutSec=600
修改为
TimeoutSec=30
保存退出
2.11 启动服务
[root@centos ~]# systemctl daemon-reload
[root@centos ~]# systemctl start mysqld.service
[root@centos ~]# systemctl status mysqld.service -l
[root@centos ~]# ps -ef|grep mysqld
[root@centos ~]# lsof -n | grep jemalloc
2.12 数据库初始化、登录客户端
[root@centos ~]# cd /opt/mysql
[root@centos ~]# ./bin/mysql_secure_installation
根据提示设置数据密码,及其它设置
[root@centos ~]# mysql -u root -p
Mysql [(none)]>status;
Mysql [(none)]>show engines;
Mysql [(none)]>exit;
2.13 增加远程访问用户,并且打开防火墙3306端口(不远程连接数据,可省略)
[root@centos ~]# mysql -u root -p
Mysql [(none)]> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
Mysql [(none)]> FLUSH PRIVILEGES;
Mysql [(none)]> exit;
(root是用户名,%是主机名或IP地址,这里的%代表任意主机或IP地址,也可指定唯一的IP地址;密码是MyPassword )
2.14 防火墙添加3306端口
[root@centos ~]# iptables -L|grep ACCEPT
[root@centos ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
[root@centos ~]# firewall-cmd --reload
[root@centos ~]# iptables -L|grep ACCEPT
CentOS7 编译安装 Mariadb (实测 笔记 Centos 7.0 + Mariadb 10.0.15)的更多相关文章
- CentOS7 编译安装 Mongodb (实测 笔记 Centos 7.0 + Mongodb 2.6.6)
环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7.0-1406-x86_64-DVD.iso 安装步骤: 1.准备 1.1 显示系统版 ...
- CentOS7 编译安装 Nginx (实测 笔记 Centos 7.0 + nginx 1.6.2)
环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7.0-1406-x86_64-DVD.iso 安装步骤: 1.准备 1.1 显示系统版 ...
- CentOS7 编译安装 Nodejs (实测 笔记 Centos 7.0 + node 0.10.33)
环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7.0-1406-x86_64-DVD.iso 安装步骤: 1.准备 1.1 显示系统版 ...
- CentOS 编译安装 Redis (实测 笔记 Centos 7.3 + redis 3.2.8)
环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7.0-1406-x86_64-DVD.iso 安装步骤: 1.准备 1.1 显示系统版 ...
- CentOS 编译安装 Nodejs (实测 笔记 Centos 7.3 + node 6.9.5)
环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7.0-1406-x86_64-DVD.iso 安装步骤: 1.准备 1.1 显示系统版 ...
- Centos7 编译安装 Nginx PHP Mariadb Memcached 扩展 ZendOpcache扩展 (实测 笔记 Centos 7.3 + Mariadb 10.1.20 + Nginx 1.10.2 + PHP 7.1.0 + Laravel 5.3 )
环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7-x86_64-Minimal-1611.iso 安装步骤: 1.准备 1.0 查看硬 ...
- centos7 编译安装新版LNMP环境
centos7 编译安装新版LNMP环境 环境版本如下: 1.系统环境:Centos 7 x86_64 2.NGINX:nginx-1.11.3.tar.gz 3.数据库:mariadb-10.0.2 ...
- CentOS7编译安装Nginx-1.8.1和编译参数
CentOS7编译安装Nginx-1.8.1和编译参数 Web服务器Nginx LNMP是一组众所周知的Web网站服务器架构环境,即由Linux+Nginx+MySQL+PHP(MySQL有时也 ...
- centos7编译安装MySQL5.7.9
title: centos7编译安装MySQL5.7.9 date: 2016-05-12 16:20:17 tags: --- Centos7编译安装mysql5.7.9 mysql5.7有更好的性 ...
随机推荐
- go智能提示(重要)
使用VIM开发go程序时,智能提示是一个大问题. 最终解决方案是使用 YCM,它是使用 gocode 来进行智能提示的.一切配置好之后,你会发现标准库和第三方库都可以智能提示,但自己写的包却不能,猜想 ...
- C/C++ 静态链接库(.a) 与 动态链接库(.so)
平时我们写程序都必须 include 很多头文件,因为可以避免重复造轮子,软件大厦可不是单靠一个人就能完成的.但是你是否知道引用的那些头文件中的函数是怎么被执行的呢?这就要牵扯到链接库了! 库有两种, ...
- 欧拉函数 - HDU1286
欧拉函数的作用: 有[1,2.....n]这样一个集合,f(n)=这个集合中与n互质的元素的个数.欧拉函数描述了一些列与这个f(n)有关的一些性质,如下: 1.令p为一个素数,n = p ^ k,则 ...
- BZOJ 4724: [POI2017]Podzielno
Description 由\([0,B-1]\)的数字构造一个 \(B\) 进制数字,使得他是 \(B-1\) 的倍数. Sol 贪心+二分. 首先 \(X\) 是 \(B-1\) 的倍数,那么有 \ ...
- windows网络编程
1.协议的特征 面向消息的和基于流的 面向连接的和面向无连接的 2.端口分为三类:“已知”端口.已注册端口.动态和私用端口 0~1023 IANA控制,为固定服务保留的 1024~49151 已注册端 ...
- MVC4.0
--后台ajax传值 <script type="text/javascript"> $(document).ready(function dianZan(id ...
- 前端小知识(转载http://www.cnblogs.com/Wayou/p/things_you_dont_know_about_frontend.html)
前端已经被玩儿坏了!像console.log()可以向控制台输出图片等炫酷的玩意已经不是什么新闻了,像用||操作符给变量赋默认值也是人尽皆知的旧闻了,今天看到Quora上一个帖子,瞬间又GET了好多前 ...
- .NET LINQ 转换数据类型
转换数据类型 转换方法更改输入对象的类型. LINQ 查询中的转换运算可用于各种应用程序.下面是一些示例: Enumerable.AsEnumerable<TSource&g ...
- ASP.NET MVC与ASP.NET Web Form简单区别与适用场景
概论: Asp.net 微软 提供web开发框架或者技术.分Web Form和ASP.NET MVC.下面简单说明各自优缺点及使用场景. Web Form 优点: 1.支持丰富的服务器控件.如:Gr ...
- nuget packages batch install
d:\nuget\nuget.exe install EnterpriseLibrary.Common -NoCache -Verbosity detailed -OutputDirectory D: ...