CentOS 6.6 源码编译安装MySQL 5.7.18教程详解

 更新时间:2017年07月03日 16:47:42   投稿:mrr  
这篇文章主要介绍了CentOS 6.6 源码编译安装MySQL 5.7.18教程详解,需要的朋友可以参考下

一、添加用户和组

1.添加mysql用户组

# groupadd mysql

2.添加mysql用户

# useradd -g mysql -s /bin/nologin mysql -M 

二、查看系统中是否安装mysql,如果安装需要卸载

# rpm -qa | grep mysql
mysql-libs-5.1.73-3.el6_5.x86_64
# rpm -e mysql-libs-5.1.73-3.el6_5.x86_64 --nodeps

三、安装所需依赖包

# yum -y install wget gcc-c++ ncurses-devel cmake 

四、安装

1.下载最新版本的MySQL

进入http://dev.mysql.com/downloads/mysql/,选择Source Code下的Generic Linux。选择带boost库的mysql下载。MySQL5.7对boost库有要求,选择带boost库的会避过一些坑。

# wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-boost-5.7.18.tar.gz 

2.解压并安装

# tar xf mysql-boost-5.7.18.tar.gz
# cd mysql-5.7.18
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -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_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306 -DWITH_BOOST=boost/boost_1_59_0
# make && make install

MySQL将会安装到/usr/local/mysql目录。

3.进入安装目录并创建data目录

# cd /usr/local/mysql
# mkdir data

4.修改/usr/local/mysql目录权限

# chown -R mysql. /usr/local/mysql 

5.初始化数据库

# ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

注:

1.之前版本mysql_install_db是在mysql_basedir/script下,5.7放在了mysql_install_db/bin目录下,且已被废弃
2."--initialize"会生成一个随机密码(~/.mysql_secret),而"--initialize-insecure"不会生成密码
3.--datadir目标目录下不能有数据文件
4.使用--initialize参数后,一定要记住生成的密码,否则无法登陆数据库。

6.拷贝启动文件到/etc/init.d/下并重命令为mysqld

# /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

7.创建配置文件

安装完后发现没有my.cnf配置文件,手动创建个

# vim /etc/my.cnf
[mysqld]
basedir =/usr/local/mysql
datadir =/usr/local/mysql/data
port = 3306
socket = /tmp/mysql.sock
[client]
socket=/tmp/mysql.sock 

8.启动mysql

# /etc/init.d/mysqld start 

9.登录mysql

# /usr/local/mysql/bin/mysql -uroot -p系统生成的密码 

10.修改root密码

mysql>set password = password(‘新密码‘);
mysql>flush privileges;
mysql>exit

11.退出重新登录

# /usr/local/mysql/bin/mysql -uroot -p‘新密码'

以上所述是小编给大家介绍的CentOS 6.6 源码编译安装MySQL 5.7.18教程详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • CentOS 6.4下编译安装MySQL5.6.14教程

    CentOS 6.4下编译安装MySQL5.6.14教程

    这篇文章主要为大家详细介绍了CentOS 6.4下编译安装MySQL 5.6.14教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-01-01
  • MySQL实现列转行与行转列的操作代码

    MySQL实现列转行与行转列的操作代码

    在处理数据时,我们常常会遇到需要将表中的列(字段)转换为行,或将行转换为列的情况,这种操作通常被称为“列转行”(Pivoting)和“行转列”(Unpivoting),本文将向您介绍如何使用 CASE 语句、聚合函数以及 GROUP BY 子句来完成列转行和行转列的操作
    2024-09-09
  • MySQL查询优化之索引的应用详解

    MySQL查询优化之索引的应用详解

    本篇文章是对MySQL查询优化中索引的使用进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • sql与mysql有哪些区别

    sql与mysql有哪些区别

    在本篇文章里小编给大家分享了关于sql与mysql的区别的内容,有兴趣的朋友们可以学习参考下。
    2020-06-06
  • Mysql数据表分区技术PARTITION浅析

    Mysql数据表分区技术PARTITION浅析

    这篇文章主要介绍了Mysql数据表分区技术PARTITION浅析,分别介绍了 Mysql 中的分区技术 RANGE、LIST、 HASH,需要的朋友可以参考下
    2014-06-06
  • mysql增加外键约束具体方法

    mysql增加外键约束具体方法

    在本篇文章里小编给大家整理的是一篇关于mysql增加外键约束具体方法及相关实例内容,有兴趣的朋友们可以跟着学习下。
    2021-12-12
  • MySQL 5.7常见数据类型

    MySQL 5.7常见数据类型

    这篇文章主要介绍了MySQL 5.7数据类型详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-07-07
  • mysql数据库limit的四种用法小结

    mysql数据库limit的四种用法小结

    mysql数据库中limit子句可以被用于强制select语句返回指定的记录数,本文主要介绍了mysql数据库limit的四种用法小结,感兴趣的可以了解一下
    2023-10-10
  • MySQL 锁的相关知识总结

    MySQL 锁的相关知识总结

    这篇文章主要介绍了MySQL 锁的相关知识总结,帮助大家更好的理解和使用MySQL数据库,感兴趣的朋友可以了解下
    2021-01-01
  • MYSQL出现" Client does not support authentication "的解决方法

    MYSQL出现" Client does not support authentication "的

    MYSQL出现" Client does not support authentication "的解决方法...
    2007-06-06

最新评论