ubuntu php 源码编译安装mysql_ubuntu下源码方式安装mysql-5.6.10

即将新官上任,有很多环境要自己搭建,现将自己搭建的每一个过程都记录下来,希望给自己做个保存,也想给有同样需要的朋友提供参考,减少不必要的时间

我用的是ubuntu11.04版本,绝对是全新的环境,参照的mysql官网的英文步骤操作的

一、准备工作

a. 到mysql官网下载mysql-5.6.10.tar.gz文件,记住,这里是source安装,不是generic安装,source是需要自己编译的,generic的是已经编译好的;这里我已经提供了下载好的source版,见附件

b.安装cmake工具,查看是否安装

cmake -v

没有安装的话,直接

apt-get install cmake

c.安装g++或者其他C/C++编译工具,我这里安装的是g++,因为安装g++,也会连gcc也安装上;

查看是否安装

g++ -version

如果没有安装的话,直接

apt-get install g++

d.安装bison

apt-get install bison

apt-get install libncurses5-dev #安装curses图形库

二、安装

添加mysql用户组和用户

groupadd mysql

useradd -r -g mysql mysql

cd /usr/src #mysql-5.6.10就下载在该目录下

tar zxvf mysql-5.6.10.tar.gz

cd mysql-5.6.10/

cmake .

make

make install

cd /usr/local/mysql

chown -R mysql .

chgrp -R mysql .

scripts/mysql_install_db --user=mysql

chown -R root .

chown -R mysql data

cp support-files/my-medium.cnf /etc/my.cnf

bin/mysqld_safe --user=mysql &

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

至此安装完成,用如下命令可以进行mysql服务器的操作

service mysql.server start

service mysql.server stop

service mysql.server restart

service mysql.server 可以显示有哪些options

注意,大多数人分不清楚如何查看mysql server是否安装成功

用如下命令查看mysqlserver是否运行

netstat -nat

看到如下3306监听tcp端口,表示已经启动

tcp6 0 0 :::3306 :::* LISTEN

也可以停止server再查看一下,会发现没有了

三、安装mysql-client客户端

此时在命令运行mysql命令,不会有任何反应,有些人会误以为还要安装mysql-client端

其实mysql-5.6.10编译安装已经包含了client端,在源码包/usr/src/mysql-5.6.10/client可以看到源码包

在/usr/local/mysql/bin目录下可以使用mysql命令、mysqladmin、mysqldump等

这时大家就明白了,只要将/usr/local/mysql/bin目录设为环境目录就行了

操作如下

两种方法:

1.直接编辑profile

vi /etc/profile

在最后加

export MYSQL_BIN=/usr/local/mysql/bin

export PATH=$PATH:$MYSQL_BIN

2.在/etc/profile.d目录下新增sh文件

cd /etc/profile.d

vi mysql.sh

输入内容

MYSQL_BIN=/usr/local/mysql/bin

if [ -d $MYSQL_BIN ]; then

export PATH=$PATH:$MYSQL_BIN

fi

简单吧,看一下就明白了,其实profile会执行/etc/profile.d下面的每个sh脚本

这样在命令行任何目录就可以使用mysql命令了,以后每次登录的时候也可以了使用mysql命令了

四、使初始MySQL账户安全

我喜欢站在别人是初学者的角度记录文档,毕竟我们是想让别人完全看懂,没有落下任何步骤的操作正确;

上面的server和client都可以使用,我们就应该考虑账户问题了,因为在这之前都没有账户,你一定也想到了;我这里同样是官方的手册文档,请放一百个心的按步操作

mysql_install_db程序已经安装了授权表,在mysql的user表中可以查看

mysql -u root

use mysql;

mysql> select host,user,password from user ;

结果如下:

+-----------+------+----------+

| host | user | password|

+-----------+------+----------+

| localhost | root | |

| ubuntu | root | |

| 127.0.0.1 | root | |

| ::1 | root | |

| localhost | | |

| ubuntu | | |

+-----------+------+----------+

6 rows in set (0.00 sec)

可以看出,目前我们有6个mysql账户了,可惜的是password都为空,这意味着,我们的数据库未收到任何保护,root账户和最后两个匿名账户,都是无密码状态,理想的状态下,我们要删除掉这两个匿名账户,毕竟我们都不希望别人匿名访问我们的数据库

mysql> DELETE FROM mysql.user WHERE User = '';

mysql> FLUSH PRIVILEGES;

这样我们就删除了匿名账户,只剩root账户了,并且是权限立即生效了

如果你没有删除匿名账户,你可以通过SET PASSWORD或者UPDATE或者mysqladmin来设置匿名账户密码!!!

为root账户指定密码!!!!

用SET PASSWORD、UPDATE、mysqladmin命令都可以设置,我们只选择UPDATE最简单方式

mysql> UPDATE mysql.user SET Password = PASSWORD('qjwm@850120$') WHERE User = 'root';

mysql> FLUSH PRIVILEGES;

这样就将root密码改为了qjwm@850120$

设置密码的时候一定要用PASSWORD加密

至此,root用户就已经被设置了密码,以后再进行数据库操作的时候,都需要提供密码了

剩下的你就可以用GRANT新增账户并进行其他操作了,祝大家好运!

如果root账户密码丢失了,还可以找回,这里只提供个链接了!http://dev.mysql.com/doc/refman/5.1/zh/problems.html#resetting-permissions

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值