MySql 5.5源码编译安装

作者:Garany 发布于:2015-11-06 分类:破万卷书
一、mysql 5.5版本之前源码编译安装

1.新建用户,目录
# useradd -M -s /sbin/nologin mysql

# mkdir -p /usr/local/mysql                 //安装mysql 
# mkdir -p /usr/local/mysql/data            //存放数据库
# chown -R mysql:mysql /usr/local/mysql/
2.编译安装
# tar zxvf mysql-5.4.3.tar.gz  
# cd mysql-5.4.3

# ./configure --prefix=/usr/local/mysql \
# --with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock \
# --sysconfdir=/usr/local/mysql/etc/ \
--localstatedir=/usr/local/mysql/data/
# make    
# make install  
3.初始化数据库

# /usr/local/mysql/bin/mysql_install_db --user=mysql 
4.生成配置文件
# cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf  
# cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld
# chmod a+x /etc/init.d/mysqld 
5.增加开机启动
# chkconfig --add mysqld  
# chkconfig mysqld on  
6.设置环境变量
# vim /etc/profile
    PATH=$PATH:/usr/local/mysql/bin/*:/usr/local/mysql/lib*
# source /etc/profile
7.重启,修改root密码,远程登录权限
# service mysqld restart   
# mysqladmin -uroot password '19910221' 
# mysql -uroot -p  

mysql>use mysql;
mysql>desc user;
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root";  //为root添加远程连接的能力。
mysql>flush privileges;
mysql>exit

二、mysql 5.5版本之后使用cmake编译安装

1.安装cmake
# yum install cmake -y
2.新建用户,目录
# useradd -M -s /sbin/nologin mysql

# mkdir -p /usr/local/mysql                 //安装mysql 
# mkdir -p /usr/local/mysql/data            //存放数据库
# chown -R mysql:mysql /usr/local/mysql/
3.编译安装
# tar -zxv -f mysql-5.5.10.tar.gz
# cd mysql-5.5.10
# cmake ./ \
> -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
> -DINSTALL_DATADIR=/usr/local/mysql/data \
> -DDEFAULT_CHARSET=utf8 \
> -DDEFAULT_COLLATION=utf8_general_ci \
> -DEXTRA_CHARSETS=all \
> -DENABLED_LOCAL_INFILE=1 \
> -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                        //允许从本地导入数据
-DENABLED_LOCAL_INFILE=1

# make
# make install

注意事项:
重新编译时,需要清除旧的对象文件和缓存信息。
# make clean
# rm -f CMakeCache.txt
# rm -rf /etc/my.cnf
4.初始化数据库
/usr/local/mysql/scripts/mysql_install_db --user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data/

# vim /etc/my.cnf
[mysqld]
basedir =/usr/local/mysql
datadir =/usr/local/mysql/data
指定安装目录和数据目录,否则会报错
5.生成配置文件
# cp /usr/local/mysql/support-files/my-medium.cnf  /etc/my.cnf
# cp /usr/local/mysql/support-files/mysql.server  /etc/init.d/mysqld
6.增加开机启动 
# chkconfig --add mysqld  
# chkconfig mysqld on 
7.设置环境变量
# vim /etc/profile
    PATH=$PATH:/usr/local/mysql/bin/*:/usr/local/mysql/lib*
# source /etc/profile
8.重启,修改root密码,远程登录权限
# service mysqld restart   
# mysqladmin -uroot password '19910221' 
# mysql -uroot -p  

mysql>use mysql;
mysql>desc user;
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root";  //为root添加远程连接的能力。
mysql>flush privileges;
mysql>exit

我来说说