1       概述

首先来看下mysql的下载地址:

http://ftp.plusline.de/mysql/Downloads/

这里有mysql的各种版本

操作系统:CentOS release 6.8 (Final)

数据库版本:mysql-5.6.31

2       规划

Mysql程序主目录

/mysql

属组: mysql  属主:root

Mysql数据目录

/data

属组: mysql  属主:  mysql

Mysql配置文件

/mysql

属组:mysql  属主:  root

Mysql端口号

3306

Sock

/mysql/mysql.sock

属组:mysql  属主:root

3       安装

3.1     安装前准备

首先要确定一下软件被安装:

cmake,make,gcc,Perl,

yum install cmake,make,gcc,Perl -y

3.2     安装

3.2.1     解压软件

tar -zxvf mysql-5.6.31.tar.gz

3.2.2     编译安装

进入mysql目录

cd mysql-5.6.31

创建目录

mkdir bootstarp

配置编译配置的参数

cmake ..  -DCMAKE_INSTALL_PREFIX = /mysql     The installation base directory.

-DMYSQL_DATADIR = /data                       The location of the MySQL data directory.

-DSYSCONFDIR=/mysql                           The default my.cnf option file directory.

-DWITH_INNOBASE_STORAGE_ENGINE=1

-DWITH_ARCHIVE_STORAGE_ENGINE=1

-DWITH_BLACKHOLE_STORAGE_ENGINE=1

-DWITH_PERFSCHEMA_STORAGE_ENGINE=1

-DMYSQL_TCP_PORT=3306                         The port number on which the server listens for TCP/IP connections. The default is 3306.

-DMYSQL_UNIX_ADDR=/mysql/mysql.sock

3.3     make并且make install

make

make install

至此mysql安装完毕

4       安装后的工作

4.1     初始化数据目录

cd mysql

cp ./support-files/my-default.cnf my.cnf

然后编辑mysql添加如下选择:

basedir = /mysql

datadir = /data

port    = 3306

socket  = /mysql/mysql.scok

更改当前目录的权限

chown  -R mysql .

chgrp  -R mysql .

初始化数据目录

scripts/mysql_install_db --user=mysql

4.2     最后更改安装目录权限

也可以不更改

4.3     启动mysql服务器

shell> bin/mysqld_safe --user=mysql &

4.4     测试mysql服务器

shell> bin/mysqladmin version

shell> bin/mysqladmin variables

4.5     初始化mysql账号

mysql安装完后,有root用户和匿名户,root用户没有密码,匿名用户表示任何人都可以连接上mysql,这是安全的。

查看这些用户的语句如下:

mysql> SELECT User, Host, Password FROM mysql.user;

因此我们需要给root用户设置密码,给匿名用户设置密码,或者删除匿名用户。

4.5.1     给root用户设置密码

方法一.

使用set命令为上边的每一个用户设置密码。

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('111111');
set password for 'root'@'mysql.localdomain'=password('111111');
set password for 'root'@'127.0.0.1'=password('111111');
SET PASSWORD FOR 'root'@'::1' = PASSWORD('111111');

方法二:

我们也可以通过一条命令搞定。

UPDATE mysql.user SET Password = PASSWORD('new_password')   WHERE User = 'root';
FLUSH PRIVILEGES;

flush privileges是告诉服务器去重读授权表,否则设置的用户名密码只有到mysql服务器重启后才可以生效。

方法三.

我们也可以通过mysqladmin来给root用户修改密码

mysqladmin -u root password "new_password"
mysqladmin -u root -h host_name password "new_password"
 

4.5.2     给匿名用户设置密码

方法一.

set password for ''@'localhost'=password('111111');
set password for ''@'mysql.localdomain'=password('111111');

方法二.

UPDATE mysql.user SET Password = PASSWORD('new_password') WHERE User = '';
FLUSH PRIVILEGES;

4.5.3     删除匿名用户

DROP USER ''@'localhost';
DROP USER ''@' mysql.localdomain ';

5       test安全问题

默认情况下,mysql.db表里含了一些行,这些行定义了任何用户都可以访问test数据库,或者以test_开头的数据库,这是安全的,应该移除。

DELETE FROM mysql.db WHERE Db LIKE 'test%';
DELETE FROM mysql.db WHERE Db LIKE 'test%';

或者删除test数据库,不建立以test开头的数据库。

源码编译安装mysql的更多相关文章

  1. CentOS源码编译安装MySQL 5.5.15

    CentOS源码编译安装MySQL 5.5.15   文章目录 [隐藏] 安装编译工具 下载源码 安装cmake和bison 编译安装MySQL 一些相关设置 安装编译工具 yum install g ...

  2. CentOS 6.6 下源码编译安装MySQL 5.7.5

    版权声明:转自:http://www.linuxidc.com/Linux/2015-08/121667.htm 说明:CentOS 6.6 下源码编译安装MySQL 5.7.5 1. 安装相关工具# ...

  3. Shell脚本一键部署——源码编译安装MySQL及自动补全工具

    Shell脚本一键部署--源码编译安装MySQL及自动补全工具 编译安装MySQL 1.软件包 Mysql安装包 将安装包拖至/opt目录下,编辑一个脚本文件,将以下内容复制进去,然后source或者 ...

  4. 源码编译安装 MySQL 5.5.x 实践

    1.安装cmakeMySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. # wget ht ...

  5. 总结源码编译安装mysql

    最近在学习源码编译安装LAMP.LNMP时,一直遇到一个难题,就是就是mysql无论怎么源码编译安装,到最后启动服务都提示"Starting MySQL.The server quit wi ...

  6. 源码编译安装 MySQL 5.5.x 实践(转)

    1.安装cmakeMySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. # wget ht ...

  7. 源码编译安装MySQL 5.7.9

    安装CentOS 6.3 配置yum:[root@hank-yoon ~]# cd /etc/yum.repos.d/ [root@hank-yoon yum.repos.d]# mkdir a [r ...

  8. CentOS 7 源码编译安装MySQL 5.7.14

    一.添加用户和组 1. 进入root: su 2. 添加组: groupadd mysql 3. 添加用户: useradd -r -g mysql -s /bin/false mysql 二.安装 ...

  9. 树莓派开发笔记(十五):树莓派4B+从源码编译安装mysql数据库

    前言   树莓派使用数据库时,优先选择sqlite数据库,但是sqlite是文件数据库同时仅针对于单用户的情况,考虑到多用户的情况,在树莓派上部署安装mysql服务,通过读写锁事务等使用,可以实现多进 ...

随机推荐

  1. JavaScript的客户端存储

    一.前言: 客户端存储实际上就是Web浏览器的记忆功能,通过浏览器的API实现数据存储到硬盘: 二.存储的不同形式: 1.Web存储:localStorage 和 sessionStorage 代表同 ...

  2. APP

    第一天 1.环境初步搭建 SmartSniff fiddler ddms AntiDroid Android Killer 百度方法 http://jingyan.baidu.com/article/ ...

  3. 微信小程序-关于post 过来服务器没有获取到数据问题

    查看一下服务器接收的post 参数是以什么形式接收的 微信给出得demo 请求的方式是Json 参数传递的 所以如果服务器使用的from 表单形式接收数据需要更改微信小程序中的 header 将 he ...

  4. 美化radio和checkbox样式

    HTML部分 <div id="holder"> <div> <div class="tag">Checkbox Small ...

  5. python 小练手

    监控 主动监控 - 服务器端轮询客户端 被动监控-客户端agent上报到服务器端 混合模式---两种都支持 需求 1个性化的监控需求 2每个服务的监控间隔不同 3混合模式的监控

  6. J2EE web项目中解决所有路径问题

    Java中使用的路径,分为两种:绝对路径和相对路径.归根结底,Java本质上只能使用绝对路径来寻找资源.所有的相对路径寻找资源的方法,都不过是一些便利方法.不过是API在底层帮助我们构建了绝对路径,从 ...

  7. centos6 install mcrypt

    Download the latest epel-release rpm from http://dl.fedoraproject.org/pub/epel/6/x86_64/ Install epe ...

  8. [Centos 6]升级安装GCC(2)

    摘要 上篇文章升级了下gcc,但发现并没有起到作用. 安装 上篇文章: 升级GCC 升级之后,检查gcc版本 strings /usr/lib/libstdc++.so. | grep GLIBCXX ...

  9. tyvj1463 智商问题

    背景 各种数据结构帝~各种小姊妹帝~各种一遍AC帝~ 来吧! 描述 某个同学又有很多小姊妹了他喜欢聪明的小姊妹 所以经常用神奇的函数来估算小姊妹的智商他得出了自己所有小姊妹的智商小姊妹的智商都是非负整 ...

  10. linux下共享库的注意点之-fpic

    在编译共享库必须加上-fpic.这是为什么呢? 首先看一个简单的例子: #include <stdio.h> int fun1() { printf("fun1\n") ...