> 数据库 > MySQL >

MySQL:MySQL5.6 编译安装

一环境准备
--下载
http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.20.tar.gz

--安装 cmake

[root@db1 soft_bak]# yum install cmake

备注: cmake 用来编译 mysql. --增加 mysql 帐号

[root@db1 ~]# groupadd mysql [root@db1 ~]# useradd -g mysql mysql [root@db1 ~]# passwd mysql

--创建目录

[root@db1 opt]# mkdir -p /opt/mysql [root@db1 opt]# mkdir -p /database/mysql/data

二 安装 MySQL --解压

[root@db1 soft_bak]# tar zxvf mysql-5.6.20.tar.gz

--编译

cmake -DCMAKE_INSTALL_PREFIX=/opt/mysql  -DMYSQL_DATADIR=/database/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci  -DWITH_DEBUG=1 make make install

备注:参数说明:                               -DCMAKE_INSTALL_PREFIX=/usr/local/mysql         //安装目录                               -DINSTALL_DATADIR=/usr/local/mysql/data         //数据库存放目录                               -DDEFAULT_CHARSET=utf8                          //使用utf8字符                               -DDEFAULT_COLLATION=utf8_general_ci            //校验字符                               -DWITH_DEBUG=1  开启 debug 支持 --cmake 报错

CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage CMake Error: Internal CMake error, TryCompile configure of cmake failed

备注: cmke 遇到以上错误,网上查了下,是因为缺少 gcc-c++ 包,安装即可。 --解决方法

yum install gcc-c++

--如果重新编译,需执行以下

make clean rm CMakeCache.txt rm /etc/my.cnf

--修改权限

chown -R mysql:mysql /database/mysql/data

--创建系统数据库的表

[root@db1 mysql]# scripts/mysql_install_db --user=mysql --basedir=/opt/mysql  --datadir=/database/mysql/data &

--设置 mysql 用户环境变量

export LANG=en_US.utf8 export MYSQL_HOME=/opt/mysql export MYSQL_DATA=/database/mysql/data export PATH=$MYSQL_HOME/bin:$PATH:. alias rm='rm -i' alias ll='ls -lh'

备注: source .bash_profile 生效。 --修改配置

cp my.cnf /etc/my.cnf

vim /etc/my.cnf

basedir = /opt/mysql datadir = /database/mysql/data port = 3306

备注:目前 仅修改以上配置。 --手工启动 mysql

[mysql@db1 mysql]$ cd /opt/mysql [mysql@db1 mysql]$ ./bin/mysqld_safe --user=mysql &

--查看 mysql 进程

[root@db1 mysql]# ps -ef | grep mysql root     14199 23253  0 15:25 pts/2    00:00:00 /bin/sh ./bin/mysqld_safe --user=mysql mysql    14376 14199 17 15:25 pts/2    00:00:02 /opt/mysql/bin/mysqld --basedir=/opt/mysql --datadir=/database/mysql/data --plugin-dir=/opt/mysql/lib/plugin --user=mysql --log-error=/database/mysql/data/db1.err --pid-file=/database/mysql/data/db1.pid --port=3306

--关闭 mysql

[mysql@db1 data]$ mysqladmin -u root -p shutdown Enter password:

三 开启 root 远程访问并修改密码


[mysql@db1 mysql]$ mysql mysql> use mysql; mysql> GRANT ALL PRIVILEGES on *.* to 'root'@'192.168.%.%' ; mysql> update user set Password=password('root') where User='root'; mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> exit Bye

备注:并开启防火墙。 --ubuntu 客户端测试

francs@francs:~$ mysql -h 192.168.2.37 -P 3306 -D mysql -u root -p Enter password: Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Welcome to the MySQL monitor Commands end with ; or \g. Your MySQL connection id is 43 Server version: 5.6.20 Source distribution Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

--另一种 mysql 启停方法

[root@db1 mysql]# service mysql start [root@db1 mysql]# service mysql stop

备注:如果提示服务不存在,执行以下。 --将mysql的启动服务添加到系统服务中

cp support-files/mysql.server  /etc/init.d/mysql 

四 参考
  • Installing MySQL Using a Standard Source Distribution
  • Linux安装mysql——源码安装


(责任编辑:IT)