ITPub博客

首页 > Linux操作系统 > Linux操作系统 > MySQL-5.1.36源码版本安装

MySQL-5.1.36源码版本安装

原创 Linux操作系统 作者:oracleclub 时间:2012-03-30 21:46:43 0 删除 编辑
源码版 安装过程比较麻烦,要求技术水平高,但能自己去定制需要的功能,生产环境下有功能需求的话尽量使用这种版本

编译前准备:
1,开发工具和开发库这两个组要安装
yum groupinstall "开发工具" "开发库"

软件下载:
http://d.1tpan.com/tp1215930441
============================================================
# tar xf /mysql-5.1.36.tar.gz -C /usr/src/
# cd /usr/src/mysql-5.1.36/
[root@li mysql-5.0.33]# ./configure --prefix=/usr/local/mysql --enable-local-infile --with-charset=gbk --with-extra-charsets=gb2312,utf8 --with-pthread --with-libwrap --with-mysqld-ldflags=-all-static --with-client-ldflags=-all-static --with-low-memory --with-mysqlmanager --with-big-tables --with-example-storage-engine --with-archive-storage-engine --with-csv-storage-engine --with-blackhole-storage-engine  --with-ndbcluster --with-federated-storage-engine

#make ;make install

====================================
# ls /usr/local/mysql/ --编译完成后这个目录就有了
bin  include  info  lib  libexec  man  mysql-test  share  sql-bench

第一步:手动编写配置文件

[root@li /]# mkdir /usr/local/mysql/etc --建立一个存放配置文件的目录


[root@li /]# vim /usr/local/mysql/etc/my.cnf --编写my.cnf

[mysqld]
port=3307 --端口不要和rpm版的3306冲突,这里使用3307
datadir=/data --数据文件存放目录
socket=/var/run/mysqld/mysql5.socket --这里的mysql5是自定义的
pid-file=/var/run/mysqld/mysql5.pid
log=/var/log/mysqld/mysql5.log
log-err=/var/log/mysqld/mysql5-err.log



--这两个日志参数都有点问题(因为5.0与5.1的版本兼容的问题),但不影响启动。

第二步:建立配置文件里所写的相关目录,并修改相应的权限
[root@li /]# mkdir /data   /var/run/mysqld/  /var/log/mysqld

[root@li /]# chown mysql.mysql /data  /var/log/mysqld /var/run/mysqld/ /usr/local/mysql/  -R


第三步:配置服务脚本
[root@li /]# cp /usr/src/mysql-5.1.36/support-files/mysql.server  /etc/init.d/mysql5 --拷贝服务脚本模版到正确的位置

[root@li /]# vim /etc/init.d/mysql5  --修改使之指向新编写的配置文件
conf=/usr/local/mysql/etc/my.cnf --修改这句

[root@li /]# chmod 755 /etc/init.d/mysql5  --给服务脚本加执行权限


第四步:初始化数据库,第一次都需要初始化
[root@li /]# /usr/local/mysql/bin/mysql_install_db --datadir=/data/ --user=mysql


第五步:启动服务,并登录
/etc/init.d/mysql5  start
/usr/local/mysql/bin/mysqld_safe --defaults-file=/usr/local/mysql/etc/my.cnf

# /usr/local/mysql/bin/mysql
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111)
--上面找不到socket文件,因为我编译时没有把下面这个参数指定,所以默认找/tmp/mysql.sock
--with-unix-socket-path


[root@li /]# /usr/local/mysql/bin/mysql --socket=/var/run/mysqld/mysql5.socket
--现在登录需要指定socket文件的位置,要想不指定,可以按下面方法做


登录时不指定socket的方法:
在配置文件/usr/local/mysql/etc/my.cnf下加上如下一段
[client]
socket=/var/run/mysqld/mysql5.socket


[root@li /]# /usr/local/mysql/bin/mysql   --再次登录就不需要指定socket文件了


--为了登录方便(输入/usr/local/mysql/bin/mysql太长),可以用下面的方法来做,然后使用mysql5这个命令来登录
# cp /usr/local/mysql/bin/mysql /bin/mysql5

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26465805/viewspace-719985/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2011-11-22

  • 博文量
    61
  • 访问量
    81625