一、源码安装

1、经典的源代码安装三步曲:

  1、编译前的配置

    ./configure

  2、编译

    make

  3、安装

    make install

2、源代码软件安装步骤:

  1、下载软件包

  2、校验软件包

  3、解包

  4、进入解包得到的目录

  5、认真阅读README和INSTALL文件

  6、按照README或者INSTALL文件中的安装步骤进行安装

实验环境搭建:

  1、basic server安装选项

  2、配置磁盘80G,swap 1024M,其他分配给/分区

  3、安装完成以后,配置网络

    主机名字、IP地址、/etc/hosts、默认网关

  4、关闭selinux、iptables

  5、配置yum

  6、配置secureCRT登录,hostonly或者桥接网络

二、源码安装MySQL 5.7

shell> pwd  #mysql的安装目录

/usr/local/mysql

1、编译安装mysql前

shell> yum install -y gcc,gcc-c++,make,ncurses-devel  #编译环境

2、编译安装cmake

shell> tar xf cmake-3.6.2.tar.gz -C /usr/local/src/

shell> cd /usr/local/src/cmake-3.6.2/

shell> ./bootstrap

shell> make

shell> make install

3、上传boost_1_59_0.tar.gz到linux上,例如上传到/usr/local/src

4、编译安装mysql

shell> groupadd mysql

shell> useradd -r -g mysql -s /bin/false mysql

shell> tar xf mysql-5.7.14.tar.gz -C /usr/local/src/

shell> cd /usr/local/src/mysql-5.7.14

shell> cmake . -DWITH_BOOST=/usr/local/src  #boost_1_59_0.tar.gz存放在"/usr/local/src"

shell> make

shell> make install

shell> cd /usr/local/mysql

shell> /usr/local/mysql/bin/mysqld --initialize --datadir=/mydata --user=mysql  #mysql初始化,生成一些mysql的系统库,只需做一次

5、修改mysql的配置文件

shell> vim /etc/my.cnf

[mysqld]
datadir=/mydata  //修改成上一步初始化指定的datadir
user=mysql
socket=/var/lib/mysql/mysql.sock
//此为默认指定
//在datadir下生成mysql.sock,该文件是在mysql启动的时候,自动创建。mysql在停止的时候会自动删除该文件。修改的话:socket=/mydata/mysql.sock [mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/mydata/mysqld.pid  //在datadir下生成mysql.pid

6、启动mysql

shell> cd /usr/local/mysql

shell> bin/mysqld_safe --user=mysql &

7、检查mysql是否启动成功

shell> netstat -an | grep :3306

tcp 0 0 :::3306 :::* LISTEN

8、登录mysql

shell> /usr/local/mysql/bin/mysql -uroot -p -S /var/lib/mysql/mysql.sock

  #-S 指定sock文件,可以通过ps进程查看mysql的sock文件

9、破解mysql密码

  1、停止mysql:kill

  2、shell> vim /etc/my.cnf

    增加skip-grant-tables

  3、启动mysql服务

  4、登录mysql

    shell> mysql -uroot -p -S /mydata/mysql.sock  #跳过密码启动,可以直接回车进入

  5、加载授权表

    mysql> flush privileges;

  6、修改mysql库中 的用户密码

    mysql> use mysql;

    mysql> alter user 'root'@'localhost' identified by '密码(自定义)';

  7、停止mysql

    mysql> shutdown;

  8、shell> vim /etc/my.cnf

    注释skip-grant-tables

  9、启动mysql服务

10、mysql的关机

  1、非正常:杀进程 kill -9 PID PPID

  2、正常:mysql> shutdown; 或者 mysql> quit;

三、源码安装MySQL 5.6

1、shell> yum install gcc gcc-c++ ncurses-devel bison

2、shell> yum install cmake readline-devel

3、建立用户和组

shell> groupadd mysql

shell> useradd -r -g mysql mysql

4、mkdir -p /usr/local/mysql/data

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

6、tar zxvf mysql-5.6.29.tar.gz

7、shell> mkdir project ; cd project/

shell> pwd

/software/mysql-5.6.29/project

8、cmake ../

9、make ; make install

10、rm -f /etc/my.cnf

11、初始化

shell> ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/ --defaults-file=/usr/local/mysql/my.cnf

12、编辑my.cnf文件

shell> vim /etc/my.cnf
[mysqld]  //服务端
datadir=/mydata
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links= [mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/mydata/mysqld.pid [mysql]  //客户端
socket=/var/lib/mysql/mysql.sock

13、编辑PATH环境变量

shell> echo $PATH

/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mysql/bin

14、启动MySQL服务

shell> cp ./support-files/mysql.server /etc/init.d/

shell> service mysql.server stop

Shutting down MySQL.[ OK ]

shell> service mysql.server start

Starting MySQL.[ OK ]

15、进入MySQL

shell> mysql -uroot -p  #空密码进入,5.6默认没有密码

16、配置用户密码和远程访问权限

  1、连接系统权限数据库

  mysql> use mysql;

  Database changed

  2、设置密码

  mysql> update user set password=password("123") where user="root";

  Query OK, 3 rows affected (0.06 sec)

  Rows matched: 5 Changed: 3 Warnings: 0

  3、刷新权限

  mysql> flush privileges;

  Query OK, 0 rows affected (0.03 sec)

  4、退出

源代码安装软件-MySQL的更多相关文章

  1. 【转载】绝对干货!Linux小白最佳实践:《超容易的Linux系统管理入门书》(连载九)如何通过源代码安装软件

    除了使用Linux的包管理机制进行软件的安装.更新和卸载,从源代码进行软件的安装也是非常常见的,开源软件提供了源代码包,开发者可以方便的通过源代码进行安装.从源码安装软件一般经过软件配置.编译软件.执 ...

  2. Linux 中如何用源代码安装软件,以及如何卸载它

    https://www.linuxidc.com/Linux/2017-12/149839.htm http://www.openssh.com/ http://www.openssh.com/por ...

  3. Linux上使用源代码安装软件

  4. 利用autotools工具制作从源代码安装的软件 分类: linux 2014-06-02 23:27 340人阅读 评论(0) 收藏

    编写程序(helloworld.c)并将其放到一个单独目录. helloworld.c: #include<stdio.h> int main() { printf("hello ...

  5. Win或Linux中编译安装软件的命令解析: configure; make; make install

    原文地址:http://www.cnblogs.com/Jerry-Chou/archive/2010/12/18/1909843.html 翻译一篇文章,我最早从这篇文章中了解到为什么Linux平台 ...

  6. [MySQL数据库之数据库相关概念、MySQL下载安装、MySQL软件基本管理、SQL语句]

    [MySQL数据库之数据库相关概念.MySQL下载安装.MySQL软件基本管理.SQL语句] 数据库相关概念 数据库管理软件的由来 数据库管理软件:本质就是个C/S架构的套接字程序. 我们在编写任何程 ...

  7. 源代码安装 MySQL 5.6.28

    本文内容 创建 MySQL 用户和组 解压 MySQL 源代码包 生成配置安装文件 编译和安装 MySQL 配置文件 创建 MySQL 授权表 MySQL 目录授权 启动 MySQL 验证 MySQL ...

  8. Linux 首先基本包安装(vim啊什么的),源,源优化,项目架构介绍, (LNMuWsgi)Django项目相关软件mysql,redies,python(相关模块)安装配置测试

    内容 补充: 查看已启动服务的端口 netstat -tulnp |grep (方式1) ss -tulnp|grep (方式2) 前期铺垫: . Linux要能上网 . 掌握Linux软件包安装方法 ...

  9. 源代码安装-非ROOT用户安装软件的方法

    0.    前言 如果你没有sudo权限,则很多程序是无法使用别人编译好的文件安装的. 还有时候,没有对应你的主机配置的安装包,这时候需要我们自己下载最原始的源代码,然后进行编译安装. 这样安装的程序 ...

随机推荐

  1. ThinkPHP框架前后台的分页调用

    一般ThinkPHP框架在底层给开发者提供了一个基本的分页类Page.class.php里面规定了Page类的一些基本的参数和结构. 2.应用分页 1> 调取文件use Think\Page; ...

  2. J2SE之基础语法总结一

    1.标识符: (1)简单来说凡是可以起名字的地方都叫标识符,起标识符的时候要见名知意. (2)标识符由字母.数字.美元符$和下划线组成,标识符应以字母.下划线.$开头,注意不能以数字开头. (3)ja ...

  3. MySQL Online DDL的改进与应用

        本文简析Online DDL的实现原理与使用过程注意事项.       任何DDL操作,执行者都需要预先测试或者清晰了解这个操作会给数据库带来的影响是否是在业务期间数据库的可承受范围内,尤其是 ...

  4. 2017最新苹果 APPLE ID注册流程

    不管你是苹果开发者还是苹果爱好者,只要你手中有苹果的终端(IPHONE .IPAD .ITouch,MAC电脑) 你想用苹果的一些服务,你就必须要申请苹果APPLE ID,才能享受到苹果提供高品质的服 ...

  5. Linux--shell脚本之文本处理工具

    文本处理工具--grep.sed.awk Bash Shell提供了功能强大的文件处理工具:sed(流编辑器stream editor)和awk,都可使用正则表达式进行模式匹配. 而grep又有助于理 ...

  6. android参数传递的几种方法

    Intent Intent i=new Intent(当前Activity.this,目标Activity.class); 1.传单值 传入: i. i.putExtra("名称" ...

  7. LeetCode 322. Coin Change

    原题 You are given coins of different denominations and a total amount of money amount. Write a functi ...

  8. python基本数据类型——set

    一.集合的定义 set集合,是一个无序且不重复的元素集合. 集合对象是一组无序排列的可哈希的值,集合成员可以做字典中的键.集合支持用in和not in操作符检查成员,由len()内建函数得到集合的基数 ...

  9. 物理提取大绝招”Advanced ADB”???

    近来手机取证有个极为重大的突破,是由手机取证大厂Cellebrite所率先发表的"Advanced ADB" 物理提取方法,此功能已纳入其取证设备产品UFED 6.1之中. 这个所 ...

  10. Linux基础(6)

    Linux基础(六) shell脚本中的三大循环和函数知识点 一.流程控制之if结构 1.简单的if实例: #!/bin/bash var='/etc/init.d' #var='/dev/sda' ...