由于初学,安装这玩意搞了三天,其间各种报错难以解决,网上各种解答误导。最好的办法还是使用官方的英文文档,建议初学者一定要使用官方的文档,特别是下面两个页面作为初学者一定要细看:

Installing MySQL Using a Standard Source Distribution:(使用标准源码方式安装)

http://dev.mysql.com/doc/refman/5.7/en/installing-source-distribution.html

MySQL Source-Configuration Options:(源码配置参数说明)

http://dev.mysql.com/doc/refman/5.7/en/source-configuration-options.html

安装步骤:

# 新增mysql用户及用户组
shell> groupadd mysql
shell> useradd -r -g mysql -s /bin/false mysql

# 进入源码下载目录,解压
shell> tar zxvf mysql-VERSION.tar.gz

# 进入解压后的目录
shell> cd mysql-VERSION

# 进行配置
shell>cmake -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_BOOST=dir
# 上述内容有必要详细说明一下:
# 1、mysql从某一版本开始(好像是5.7),使用cmake进行配置,而不是./configure
# 2、mysql默认的配置参数一般可正常使用,详见上面的第二个链接,如不需要修改,则不用配置,我们这里只配置默认字符集与默认编码
# 3、mysql5.7.11版本需要使用boost(一个C++程序库),DWITH_BOOST后面需要配置该库的地址,建议直接下载带boost库的mysql源码包
# 开始编译及安装
shell> make && make install

# 清除安装临时文件
shell> make clean
# 备份/etc/my.cnf这个文件,删除掉/etc/my.cnf这个文件:(原因是系统可能原本就存在该文件,为不干扰mysql的正常使用,先删除)
shell> cp /etc/my.cnf /etc/my.cnf.bak
shell> rm -f /etc/my.cnf

# 进入安装目录(默认安装在此目录)
shell> cd /usr/local/mysql

# 更改本目录的主用户及用户组
shell> chown -R mysql .
shell> chgrp -R mysql .

# 初始化
shell> bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
shell> bin/mysql_ssl_rsa_setup

# 更改本目录的主用户(设为root是为了防止普通用户不小心删除数据库)
shell> chown -R root .

# 更改数据存放目录的主用户
shell> chown -R mysql data

# 复制my.cnf
shell> cp support-files//my-default.cnf /etc/my.cnf

# 官方文档存在这一步,但不明白其用意。我在安装时跳过这一步。
shell> bin/mysqld_safe --user=mysql &

# 复制服务启动脚本
shell> cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

# 编辑PATH搜索路径
shell> vi /etc/profile

# 在profile文件末尾增加两行
PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
export PATH

# 使PATH搜索路径立即生效:
shell> source /etc/profile

# 启动MySQL服务
shell> service mysql start
# MySQL提示:The server quit without updating PID file问题的解决办法:用命令“ps -A|grep mysqld”查看是否有mysqld进程,如果有使用“kill -9 进程号”杀死,然后重新启动mysqld!

# 设置开机自动启动服务
shell> chkconfig mysql on

# 登录并修改MySQL用户root的密码
shell> mysql -u root
mysql> use mysql; mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "123456";
mysql> flush privileges;
mysql> exit;

如有问题,可E-mail与我联系:523161658@qq.com

centos7上源码安装mysql5.7.11的更多相关文章

  1. CentOS7下源码安装mysql5.6

    目录 准备工作 运行环境 确认你的安装版本 下载mysql 安装mysql 准备安装环境 编译和安装 配置mysql 单实例配置      单实例配置方法          添加防火墙         ...

  2. centos7下源码安装mysql5.7.16

    一.下载源码包下载mysql源码包 http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.16.tar.gz 二.安装约定: 用户名:mysql 安装目录 ...

  3. 在CentOS7上源码安装php7--Install php7 from source on CentOS7

    首先下载php源码包并解压: # wget http://cn2.php.net/get/php-7.0.9.tar.gz/from/this/mirror # .tar.gz # cd php- 然 ...

  4. lnmp之阿里云源码安装mysql5.7.17

    mysql5.7.17一直号称世界上最好的mysql 那么就在阿里云主机linux安装它(采用的源码安装mysql5.7.17) 我在阿里云主机上安装它 连接阿里云主机 进入,跟我们自己装的虚拟机一毛 ...

  5. CentOS6.7源码安装MySQL5.6

    1.源码安装MySQL5.6 # CentOS6操作系统安装完成后,默认会在/etc目录下存在一个my.cnf, # 强制卸载了mysql-libs之后,my.cnf就会消失 rpm -qa | gr ...

  6. CentOS6.5源码安装MySQL5.6.35

    CentOS6.5源码安装MySQL5.6.35 一.卸载旧版本 1.使用下面的命令检查是否安装有mysql [root@localhost tools]# rpm -qa|grep -i mysql ...

  7. [原创]在Centos7.2上源码安装PHP、Nginx、Zentao禅道

    版本 操作系统:CentOS Linux release 7.2.1511 (Core) PHP:5.6.33 Nginx:1.12.2 MySQL:5.6.38(192.168.1.103的Wind ...

  8. CentOS7下源码安装5.6.23

    清理CentOS7下的MariaDB. [root@localhost ~]#rpm -qa | gremp mariadb     [root@localhost ~]# rpm -e --node ...

  9. 搭建LNAMP环境(一)- 源码安装MySQL5.6

    1.yum安装编译mysql需要的包 yum -y install gcc-c++ make cmake bison-devel ncurses-devel perl 2.为mysql创建一个新的用户 ...

随机推荐

  1. File类基础

    File类的作用: Java的io包中定义了File类,用于对文件或文件夹的管理操作. File类只能够用于表示文件或文件夹的信息(属性)和对该文件或文件夹的删除创建操作 (不能对内容进行访问) 通过 ...

  2. The integer promotion.

    Usual Arithmetic Conversion: The integer promotions are performed on both operands. Then the followi ...

  3. GitHub 上有哪些完整的 iOS-App 源码值得参考?

    1. Coding iOS 客户端 Coding官方客户端. 笔者强烈推荐的值得学习的完整APP.GitHub - Coding/Coding-iOS: Coding iOS 客户端源代码 2. OS ...

  4. boost-内存管理

    Boost智能指针——scoped_ptr boost::scoped_ptr和std::auto_ptr非常类似,是一个简单的智能指针,它能够保证在离开作用域后对象被自动释放. boost::sco ...

  5. 微信小程序多宫格抽奖

    最近闲来无事,做了一个多宫格抽奖的例子,有什么需要改进或者错误的地方,请留言,谢谢 首先看效果 思路是先让其转动2圈多,然后再进行抽奖,格子运动用的是setTimeout,让其运行的时间间隔不一样,然 ...

  6. html5 postMessage解决跨域、跨窗口消息传递[转载]

    原文:http://www.cnblogs.com/dolphinX/p/3464056.html 一些麻烦事儿 平时做web开发的时候关于消息传递,除了客户端与服务器传值还有几个经常会遇到的问题 1 ...

  7. cobbler自动化安装系统

    笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 在很久很久以前,使用kickstart实现自动化安装的时候,我一直认为装系统是多么高大上的活,直到cobbler的 ...

  8. 《Android进阶之光》--Android新特性

    Android 5.0新特性 1)全新的Material Design设计风格 2)支持多种设备 3)全新的通知中心设计--按照优先级显示 4)支持64位ART虚拟机 5)多任务视窗Overview ...

  9. layui select配合input实现动态模糊搜索

    功能需求:select框可以自己输入,就是在下拉列表里找不到自己想要的选项就可以自己输入,同时还要支持模糊匹配功能 html代码: 样式: <style> .select-search-i ...

  10. 给自己的博客上添加个flash宠物插件

    前言 最近在一些博主的博客上看到一些小宠物的挂件,很有趣,访客到了网站后可以耍耍小宠物,增加网站的趣味性,在功能强大的博客系统上看到有这样的小宠物挂件还是蛮有趣的. 正文 下面就简单介绍下如何在博客园 ...