编译安装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
--------------
编译安装mysql-server5.6.32手记的更多相关文章
- 源码编译安装 MySQL 5.5.x 实践
1.安装cmakeMySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. # wget ht ...
- CentOS 编译安装 mysql
1.前期准备 1.1 环境说明: 操作系统: CentOS release 6.4 (Final) [查看命令 cat /etc/redhat-release ] mysql : mysql-5.6. ...
- Linux CentOS6.5下编译安装MySQL 5.6.16【给力详细教程】
一.编译安装MySQL前的准备工作 安装编译源码所需的工具和库 yum install gcc gcc-c++ ncurses-devel perl 安装cmake,从http://www.cmake ...
- Linux编译安装Mysql步骤
一. Centos 用 wget 下载需要的软件,保存到目录/home/zwl/MySql/下 wget http://dev.mysql.com/get/Downloads/MySQL-5.5/my ...
- CentOS下编译安装MySQL 5.6.21
一.编译安装MySQL前的准备工作 安装编译源码所需的工具和库 yum install gcc gcc-c++ ncurses-devel perl 安装cmake:http://www.cnblog ...
- 【排障】编译安装Mysql并使用自启动脚本mysqld后报错
本文用于记录在某次个人实验搭建DZ论坛,在编译安装部署mysql环节时出的错到最终排除错误的过程, 前面采用DZ官网所采用的编译安装mysql的过程就省去,主要从报错处开始讲述. (题外话,经此一役后 ...
- 源码编译安装 MySQL 5.5.x 实践(转)
1.安装cmakeMySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. # wget ht ...
- Linux 环境编译安装mysql (源码安装包)
标注: Linux需要先配置网络yum源,确定yum能在线安装软件包,方便测试过程中安装部分依赖包.配置163网易提示的网络yum源参考博客 http://www.cnblogs.com/zoulo ...
- Linux(CentOS6.5)下编译安装MySQL Community Server 5.7.12
组件 官方网站 直接下载地址 备注 mysql http://dev.mysql.com/downloads/mysql/ http://mirrors.sohu.com/mysql/MySQL- ...
- LNMP搭建01 -- 编译安装MySQL 5.6.14 和 LNMP相关的区别
[编译安装MySQL 5.6.14] [http://www.cnblogs.com/xiongpq/p/3384681.html ] [mysql-5.6.14.tar.gz 下载] http:/ ...
随机推荐
- Python的import嵌套
[root@fuel ~]# vi /var/lib/docker/devicemapper/mnt/4da57a0078c9d3f32e819373b67de41da37c34a27ee03f740 ...
- 004-Python字符串
Python 字符串(str) 字符串是 Python 中最常用的数据类型.我们可以使用引号('或")来创建字符串.创建字符串很简单,只要为变量分配一个值即可. var1 = "H ...
- JS面向对象基础
以往写代码仅仅是为了实现特定的功能,后期维护或别人重用的时候,困难很大. Javascript作为完全面向对象的语言,要写出最优的代码,需要理解对象是如何工作的. 1. 对象是javasc ...
- mysql连接不上Uncaught exception 'PDOException' with message 'could not find driver
需要给你的PHP加一个PDO扩展打开PHP.INI 把extension=php_pdo.dll 前面的分号去掉 重启APACHE. extension=php_pdo_mysql.dll
- xml 解析 python
1 综述 有很多种解析方法. (1) DOM 缺点是:1 不能解析格式不正确或者不规则xml 2据说只能解析utf-8格式,非utf-8需要转码 与SAX比较,DOM典型的缺点是比较慢,消耗更 ...
- jdk8 eclipse luna market crashed
THAT WORKS! Eclipse Luna starts normally when I first do the suggested: export SWT_GTK3=0 https://bu ...
- Clustering text documents using k-means
源代码的链接为http://scikit-learn.org/stable/auto_examples/text/document_clustering.html Loading 20 newsgro ...
- Servlet中文乱码处理
} } ...
- 在阿里云ECS(CentOS6.5)上安装ftp
安装vsftpd 命令: yum install vsftpd –y 结果: 创建ftp存取文件的目录,用户名,密码 命令: useradd -d /home/ftp -g ftp -s /sbin/ ...
- laravel项目安装debugbar
在github上有laravel项目的debugbar,可以查看项目的页面引用.变量.数据库使用.内存和反应时间等,貌似是一个还不错的小工具,效果如下: 安装地址:https://github.com ...