源码安装mysql

  
groupadd mysql
 
useradd -g mysql mysql
 
tar zxvf xxxx.tar.gz
 
cd mysql-VERSION
 
./configure --prefix=/usr/local/mysql
 
make
 
make install
 
mkdir date
 
chown mysql.mysql /usr/local/mysql/date/ -R
 
 
cp support-files/my-medium.cnf /etc/my.cnf
 
 
在my.cnf mysql 标签中添加
 
basedir=/usr/local/mysql
datedir=/usr/local/mysql/date
 
 
 
cd /usr/local/mysql
 
bin/mysql_install_db--user=mysql
 
chown -R root
 
chown -R mysql var
 
chgrp -R mysql 
 
 
 
 
configure 的作用,检查是否有CC或者GCC的编译器,生成
makefile,控制mysql的编译动作,它只是一个shell脚本
 
 
 
 
常选项:
 
--prefix   设定安装路径,默认为/usr/local;
 
--datedir    设定mysql数据文件存放路径;
 
--with-charset 设定系统默认字符集;
 
--with-collation    系统默认的校验规则;
 
--with-extra-charsets 出了默认字符集之外需要编译安装的字符集;
 
--with-unix-socket-path 设定socket文件地址
 
 
 
 
--with-tcp-port   指定特定监听端口,默认为3306
 
--with-mysqld-user   指定运行mysql的os用户,默认为mysql;
 
--without-query-cache  禁用Query cache 功能
 
--without-innodb      禁用innodb存储引擎
 
--with-partition      
 
--enable-thread-safe-client
 
--with-pthread
 
--with-named-thread-libs      指定使用某个特定的线程库编译;
 
--without-debug          使用非debug模式
 
--with-mysql-ldflags    
 
--with-client-ldflags   client的额外link参数
 
 
 
 
 
安装后目录
 
bin                    客户端程序和脚本
 
include/mysql           包含(头)文件
 
info                      info格式的文档
 
 
lib/mysql                链接库
 
libexec                   mysqld服务器
 
share/mysql              错误消息文件
 
sql-bench                基准程序和crash-me 测试
 
 
===================================安装MYSQL出现错解决方案
 系统环境:redhat 5.0
系统是默认安装,安装的软件不是很多,在编辑MYSQL时:
[root@benet mysql-5.0.56]#./configure --prefix=/usr/local/mysql --with-charset=gb2312 --with-extra-charsets=all
编译执行后出现如下错误:
checking for termcap functions library… configure: error: No curses/termcap library found
 
解决方法:
编译时加上ncurses库的路径即可解决,即
[root@benet mysql-5.0.56]#./configure --prefix=/usr/local/mysql 
--with-charset=gb2312 --with-extra-charsets=all
 --with-named-curses-libs=/usr/lib/libncurses.so.5