Linux 源码编译安装 MySQL 5.5.x

Linux 环境:CentOS 6.5

MySQL 版本:5.5.20,附下载地址:【点击下载

1、安装cmake

MySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具。

因此,我们首先要在系统中源码编译安装cmake工具。

下载 cmake

[root@ruxingli soft]# wget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz

解压

[root@ruxingli soft]# tar zxvf cmake-2.8.4.tar.gz

[root@ruxingli soft]# cd cmake-2.8.4
[root@ruxingli cmake-2.8.4]# ./configure
[root@ruxingli cmake-2.8.4]# make && make install

2、确保以下所需系统软件包已经被安装

通过 rpm -qa | grep name 的方式验证以下软件包是否已全部安装。

gcc* gcc-c++* autoconf* automake* zlib* libxml* ncurses-devel* libgcrypt* libtool*

如果缺少相关的软件包,可通过yum -y install 的方式在线安装,或直接从系统安装光盘中找到并通过rpm -ivh 的方式安装。

3、安装前的系统测试

建立mysql安装目录及数据存放目录

[root@ruxingli cmake-2.8.4]# mkdir -p /usr/local/mysql5.5.20

创建用户和用户组

[root@ruxingli cmake-2.8.4]# groupadd mysql
[root@ruxingli cmake-2.8.4]# useradd -g mysql mysql

赋予数据存放目录权限

[root@ruxingli mysql-5.5.20]# chown mysql:mysql -R /usr/local/mysql5.5.20/

4、编译安装MySQL5.5.20

[root@ruxingli soft]# tar zxvf mysql-5.5.20.tar.gz
[root@ruxingli soft]# cd mysql-5.5.20

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql5.5.20/ -DSYSCONFDIR=/etc/ -DMYSQL_DATADIR=/usr/local/mysql5.5.20/data/ -DMYSQL_TCP_PORT=3306 -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DMYSQL_USER=mysql -DEXTRA_CHARSETS=all -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_SSL=bundled

可能出现的错误


解决方法:

[root@ruxingli mysql-5.5.20]# yum install bison


解决方法:

去掉 -DMYSQL_USER=mysql

[root@ruxingli mysql-5.5.20]# make
[root@ruxingli mysql-5.5.20]# make install

配置并初始化数据库

创建 my.cnf 配置文件

[root@ruxingli3 mysql5.5.20]# cp support-files/my-medium.cnf /etc/my.cnf

执行前需赋给scripts/mysql_install_db文件执行权限

[root@ruxingli mysql-5.5.20]# chmod 755 scripts/mysql_install_db
[root@ruxingli mysql-5.5.20]# scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql5.5.20/ --datadir=/usr/local/mysql5.5.20/data/

创建管理MySQL数据库的shell脚本

[root@ruxingli mysql-5.5.20]# mkdir /usr/local/mysql5.5.20/init.d
[root@ruxingli mysql-5.5.20]# cp support-files/mysql.server /usr/local/mysql5.5.20/init.d/mysql

赋予shell脚本可执行权限:

[root@ruxingli mysql-5.5.20]# chmod +x /usr/local/mysql5.5.20/init.d/mysql
启动MySQL

[root@ruxingli mysql-5.5.20]# /usr/local/mysql5.5.20/init.d/mysql start

如果启动失败,请参考 http://blog.csdn.net/zalion/article/details/9274263

我的解决方法是:

[root@ruxingli3 mysql]# rm -rf /var/lock/subsys/mysql

通过命令行来管理MySQL服务器

[root@ruxingli3 mysql5.5.20]# /usr/local/mysql5.5.20/bin/mysql
为 root 账户设置初始密码

[root@ruxingli3 mysql5.5.20]# /usr/local/mysql5.5.20/bin/mysqladmin -u root password '123456'
进入命令行MySQL

[root@ruxingli3 mysql5.5.20]# /usr/local/mysql5.5.20/bin/mysql -u root -p123456

删除本机匿名连接的空密码帐号

mysql> use mysql;
mysql> delete from user where password='';
mysql> flush privileges;
mysql> select Host,User,Password from user;
mysql> exit


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值