源码安装mysql

本来是做软件开发,结果却接了DBA的活,真是伤不起啊。

【参考文档】

http://wenku.baidu.com/view/cd789d6125c52cc58bd6be08.html

 

【环境】

redhat + mysql5.5.18 + cmake

 

【步骤】

1. 下载mysql和cmake的tar包,由于我需要安装特定版本的,所以找起来还不太容易。下面提供mysql5.5.18的链接,cmake只要在官网www.cmake.org上下载就好了。

http://downloads.mysql.com/archives.php?p=mysql-5.5&o=other

2.添加用户和组,命名为mysql。

    groupadd mysql

    useradd -g mysql mysql 

3.解压cmake到本地目录tar -xvzf xxxx,在make前要确保有g++和gcc。进入解压后的目录,运行./configure,然后make && make install。

4. 安装好cmake之后,解压mysql的源码包。

    tar -xvzf xxxx

5. 进入解压目录,用cmake编译源码,在cmake时可以根据自己的需要定制,下例是我安装时选用的配置。

    cmake . -DCMAKE_INSTALL_PREFIX=/opt/mysql5.5 -DMYSQL_DATADIR=/opt/mysql5.5/data -DINSTALL_INCLUDEDIR=include/mysql -DINSTALL_LIBDIR=lib64/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1

    -DCMAKE_INSTALL_PREFIX=/usr/local/mysql //安装目录
    -DINSTALL_DATADIR=/usr/local/mysql/data //数据库存放目录
    -DDEFAULT_CHARSET=utf8     //使用utf8字符
    -DDEFAULT_COLLATION=utf8_general_ci //校验字符
    -DEXTRA_CHARSETS=all     //安装所有扩展字符集
    -DENABLED_LOCAL_INFILE=1    //允许从本地导入数据

6. make && make install

7. 将安装目录下的data目录修改用户和组

    chown -R mysql:mysql data

8. 初始化数据库,需要用到安装目录下的scripts/mysql_install_db

    ./mysql_install_db --user=mysql --basedir=/opt/mysql5.5 --datadir=/opt/mysql5.5/data

    --user: 数据库的user

    --basedir: 安装目录

    --datadir: 数据库存放的位置,也就是data目录

9. 从安装目录拷贝一个cnf文件到/etc/下。

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

10. 运行安装目录下bin/mysqld_safe启动mysql。

     ./mysqld_safe --user=mysql &

     如果本机上有多台数据库,就需要在my.cnf里指定basedir和datadir,在mysqld_safe启动时指定cnf文件

     /mysqld_safe --user=mysql --defaults-file=/etc/my.cnf

 

以上就是安装的步骤。另外也可以通过脚本启动,也就是用service mysqld start。这时需要拷贝安装目录下support-files/mysql.server到/etc/init.d/并且命名为mysqld。给所有用户可执行的权限chmod 777 /etc/init.d/mysqld,之后就可以通过service mysqld start 和 service mysqld stop来启动和停止数据库。

如果服务器上有多台数据库,那么有可能需要修改环境变量PATH的位置。

   

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值