编译安装mysql-server5.6.32手记

起因:

CentOS内置源里面默认安装的Mysql-server太老旧,不支持一些新方法的调用,需要重新安装一个新版本

老版本里面有数据,不想卸载,想保留库和软件本身

机器上没有运行Docker,而且数据库不太适合Docker化

看来编译安装最适合

目标:

编译安装Mysql-server5.6.32

并保留mysql-server-5.1.73-7.el6.x86_64

准备工作:

备份原始配置文件
(备份rpm包安装的Mysql-server的配置文件)
cp /etc/my.cnf /etc/my.cnf.bak

下载软件包
wget http://downloads.mysql.com/archives/get/file/mysql-5.6.32.tar.gz
tar -zxvf mysql-5.6.32.tar.gz

具体步骤

切换到Mysql-server目录准备编译源码
cd mysql-5.6.32

运行下面cmake指令,提示缺少libncurses5-dev
yum install libncurses5-dev
失败,因为libncurses5-dev是debian下面的包名字,而CentOS下面应该运行
yum install ncurses-devel

再次运行编译
 cmake
 -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
 -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock   
 -DDEFAULT_CHARSET=utf8  
 -DDEFAULT_COLLATION=utf8_general_ci  
 -DWITH_INNOBASE_STORAGE_ENGINE=1
 -DWITH_ARCHIVE_STORAGE_ENGINE=1    
 -DWITH_BLACKHOLE_STORAGE_ENGINE=1   
 -DMYSQL_DATADIR=/home/mysqldata    
 -DMYSQL_TCP_PORT=3306   
 -DENABLE_DOWNLOADS=1

------------------------
注意:若要重新运行配置,需要删除目录内CMakeCache.txt文件

rm CMakeCache.txt  
------------------------

make && make install

使用下面的命令查看是否有mysql用户及用户组
(由于我这个机器上原来有rpm包安装的Mysql所有就忽律查看或者添加用户组的步骤啦!)

cat /etc/passwd 查看用户列表
cat /etc/group  查看用户组列表
如果没有就创建

groupadd mysql
useradd -g mysql mysql
修改/usr/local/mysql权限

chown -R mysql:mysql /usr/local/mysql

修改配置文件
cp support-files/my-default.cnf /etc/my.cnf
vi /etc/my.cnf

-----my.cnf begin------
[client]
default-character-set=utf8
socket = /usr/local/mysql/mysql.sock

[mysql]
default-character-set=utf8

[mysqld]
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M

# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin

# These are commonly set, remove the # and set as required.
basedir = /usr/local/mysql
datadir = /home/mysqldata/
port = 3306
# server_id = .....
socket = /usr/local/mysql/mysql.sock
character-set-server=utf8
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
-----my.cnf end------

初始化数据库
cd /usr/local/mysql/
./scripts/mysql_install_db --user=mysql --datadir=/home/mysqldata

修改文件和目录权限,否则开启服务会报错
chown -R mysql:root /usr/local/mysql/mysql.sock
chown -R mysql:root /usr/local/mysql

测试开启编译安装的Mysql
/usr/local/mysql/bin/mysqld_safe

运行正常则添加启动脚本

cp support-files/mysql.server /etc/init.d/mysql
chkconfig mysql on
service mysql start  --启动MySQL

--------------
注意,因为我这里有原来rpm包安装的Mysql-server,
所以为了不覆盖其启动脚本
cp support-files/mysql.server /etc/init.d/mysql_tarball
chkconfig mysql_tarball on
service mysql_tarball start  --启动MySQL
--------------

时间: 2024-10-12 10:53:27

编译安装mysql-server5.6.32手记的相关文章

centos 6.5 32位 编译安装Mysql

groupadd mysql #添加mysql组 useradd -g mysql mysql -s /bin/false #创建用户mysql并加入到mysql组,不允许mysql用户直接登录系统 mkdir -p /data/mysql #创建MySQL数据库存放目 chown -R mysql:mysql /data/mysql #设置MySQL数据库目录权限 mkdir -p /usr/local/mysql #创建MySQL安装目录 cd /opt tar zxvf mysql-5.5

CentOS 6.5最小化编译安装mysql 5.5.35

1.关闭防火墙: [[email protected] ~]# service iptables stop iptables: Setting chains to policy ACCEPT: filter          [  OK  ] iptables: Flushing firewall rules:                         [  OK  ] iptables: Unloading modules:                               [

CentOS 6.5最小化编译安装mysql 5.5.35配置多实例

1.关闭防火墙 [[email protected] ~]# service iptables stop iptables: Setting chains to policy ACCEPT: filter          [  OK  ] iptables: Flushing firewall rules:                         [  OK  ] iptables: Unloading modules:                               [ 

编译安装mysql

编译安装mysql源码包和多实例登录 1.编译安装mysql 1)首先查看这个包是否安装 [[email protected] ~]# rpm -qa ncurses-devel libaio-devel [[email protected] ~]# 2)如果没有安装请安装 yum install ncurses-devel libaio-devel -y 3)安装cmake编译命令 yum install cmake -y 4)创建mysql虚拟用户不指定家目录 user add mysql-

在CentOS上编译安装MySQL+安装问题解决+安全优化

0.说明 当然,MySQL的安装方法多种多样,在CentOS上,你可以采用YUM的方式安装,这样的好处是:快速方便.基本上,它会帮你解决所有的函数库依赖问题,正常情况下,只要YUM执行完成,那么MySQL也就可以使用了. 但我更倾向于使用编译的方式来安装MySQL,原因也很简单:除了有详细的官方文档外,你还可以非常清楚地知道你自己在做什么,这点在以后MySQL运行出现问题时将会有很大的帮助! 但即便是按照官方文档来安装,你也会遇到各种各样的问题,这里,我将呈现一个完整的过程给大家,直到完成下面的

Centos 7.2 编译安装 MySQL 5.7.14

一.环境准备 1.查看系统版本 [[email protected] ~]# cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) [[email protected] ~]# uname -r 3.10.0-327.28.2.el7.x86_64 2.卸载系统自带的mysql/mariadb数据库及boost旧版本 rpm -qa | grep mysql rpm -qa | grep mariadb rpm -e --nod

Cmake编译安装mysql

在实际应用中,大多数公司一般都会采用编译安装mysql 下载地址:http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.22.tar.gz/ 系统环境:CentOS 6.7 finall 1,安装所需要的依赖包 yum install -y ncurses-devel.x86_64 yum install -y cmake.x86_64 yum install -y libaio.x86_64 yum install -y bison.x8

Linux CentOS6.5下编译安装MySQL 5.6.16【给力详细教程】

一.编译安装MySQL前的准备工作 安装编译源码所需的工具和库 [sql] view plaincopy yum install gcc gcc-c++ ncurses-devel perl 安装cmake,从http://www.cmake.org下载源码并编译安装 [sql] view plaincopy wget http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz tar -xzvf cmake-2.8.10.2.tar.gz cd 

CentOS 6.4下编译安装MySQL 5.6.16

一.卸载旧版本MySql 1.rpm卸载: 1> 检查安装包: rpm -qa | grep mysql 2> 普通删除: rpm -e mysql-5.6.16.rpm 3> 强力删除.如果使用上面命令删除时,提示有依赖的其他文件,则使用该命令可以对其进行强力删除. rpm -e --nodeps mysql-5.6.16.rpm 2.tar卸载: 1> 删除临时文件: make clean 2> 卸载 make uninstall 3> 删除解压文件 rm  -rf

linux学习笔记——源码编译安装Mysql

#######Redhat6.5源码编译安装Mysql########实验环境:1.IP:172.25.8.32.磁盘要大于20G先添加一块大于20G的磁盘fdisk /dev/vdb        ##得到/dev/vdb1 8e linuxpvcreate /dev/vdb1    ##把物理分区做成物理卷vgextend vg_server1 /dev/vdb1    ##把新建立的/dev/vdb1添加到vg_server1中lvextend -L 20G /dev/vg_server1