CentOs源码安装mysql-5.6.34(cmake)

安装环境:

  VM11 

  CentOs6.7x86_64(Basic Server +Base System:BaseCompatlibility librariesDebuggin Tools+Developmetn:Development tools)

  2G内存  20G磁盘

一.安装依赖包

# yum -y install cmake
# yum -y install ncurses-devel
# yum -y install libaio-devel
# yum -y install gcc-c++

二.创建用户及安装目录

用户:
    # groupadd mysql    //创建组
    # useradd mysql -g mysql -M -s /sbin/nologin   //添加用户
    # id mysql   //检查
目录:
    # mkdir -p /usr/local/mysql   //安装mysql 
    # mkdir -p /usr/local/mysql/data    //存放数据库

三.安装mysql

  先准备到文件包:mysql-5.6.34.tar.gz

使用root登录
# tar -zxvf mysql-5.6.34.tar.gz 
# cd mysql-5.6.34
# cmake .  -DCMAKE_INSTALL_PREFIX=/usr/local/mysql  -DMYSQL_DATADIR=/usr/local/mysql/data  -DDEFAULT_CHARSET=utf8  -DDEFAULT_COLLATION=utf8_general_ci  -DEXTRA_CHARSETS=all  -DENABLED_LOCAL_INFILE=1
# make
# make install

参数说明:

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql    #安装路径
-DMYSQL_DATADIR=/usr/local/mysql/data           #数据文件存放位置
-DSYSCONFDIR=/etc                                                #my.cnf路径
-DWITH_MYISAM_STORAGE_ENGINE=1           #支持MyIASM引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1      #支持InnoDB引擎
-DWITH_MEMORY_STORAGE_ENGINE=1         #支持Memory引擎
-DWITH_READLINE=1                                             #快捷键功能(我没用过)
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock         #连接数据库socket路径
-DMYSQL_TCP_PORT=3306                                 #端口
-DENABLED_LOCAL_INFILE=1                            #允许从本地导入数据
-DWITH_PARTITION_STORAGE_ENGINE=1     #安装支持数据库分区
-DEXTRA_CHARSETS=all                                     #安装所有的字符集
-DDEFAULT_CHARSET=utf8                                 #默认字符
-DDEFAULT_COLLATION=utf8_general_ci

注意事项:

重新编译时,需要清除旧的对象文件和缓存信息。

# cd  mysql-5.6.34/
# make clean
# rm -f CMakeCache.txt
# rm -rf /etc/my.cnf

四.安装后配置:

修改目录权限:

# cd /usr/local/mysql
# chown -R root:mysql . //把当前目录中所有文件的所有者所有者设为root,所属组为mysql
# chown -R mysql:mysql data

# cp support-files/my-medium.cnf /etc/my.cnf //将mysql的启动服务添加到系统服务中


创建系统数据库的表
# cd /usr/local/mysql
# scripts/mysql_install_db --user=mysql

设置环境变量
# vi /root/.bash_profile

在PATH=$PATH:$HOME/bin添加参数为:
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib

#source /root/.bash_profile

五.手动启动MYSQL

 # cd /usr/local/mysql

 # ./bin/mysqld_safe --user=mysql &   //启动MySQL,但不能停止

启动日志写在此文件下:/usr/local/mysql/data/localhost.err

另一种简单的启动mysql的方法(mysql已经被添加到系统服务中)

# cd /usr/local/mysql

# cp support-files/mysql.server  /etc/init.d/mysqld //将mysql的启动服务添加到系统服务中

# service mysqld status 
# service mysqld start  
# service mysqld stop
# service mysqld restart

六. 测试MySQL是否启动

1)查看是否有进程mysql
   # ps -ef | grep mysqld
2)查看端口是否运行
    # netstat -tnl | grep 3306
 3)读取mysql版本信息
    # mysqladmin version

七. 将mysql服务添加到开机启动项,让mysql服务开机启动

# chkconfig --add mysql

八. 修改MySQL的root用户的密码以及打开远程连接

# mysql -u root mysql

mysql>use mysql;
mysql>desc user;
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root";  //为root添加远程连接的能力。
mysql>update user set Password = password('xxxxxx') where User='root';
mysql>select Host,User,Password  from user where User='root'; 
mysql>flush privileges;
mysql>exit

重新登录:mysql -u root -p

若还不能进行远程连接,则关闭防火墙
# /etc/rc.d/init.d/iptables stop

参考文章:

http://www.cnblogs.com/fly1988happy/archive/2011/11/21/2257682.html

http://blog.csdn.net/zqtsx/article/details/9378703

http://oldboy.blog.51cto.com/2561410/1917295

原文地址:https://www.cnblogs.com/chenqs/p/6907780.html