MySQL:MySQL5.6 编译安装

本文简单介绍 MySQL5.6 编译安装过程。

一 环境准备

下载
http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.20.tar.gz

安装 cmake

1
[root@db1 soft_bak]# yum install cmake

备注: cmake 用来编译 mysql.

增加 mysql 帐号

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

创建目录

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

二 安装 MySQL

解压

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

编译

1
2
3
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 报错

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

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

解决方法

1
yum install gcc-c++

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

1
2
3
make clean  
rm CMakeCache.txt
rm /etc/my.cnf

修改权限

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

创建系统数据库的表

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

设置 mysql 用户环境变量

1
2
3
4
5
6
7
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 生效。

修改配置

1
2
3
4
5
6
cp my.cnf /etc/my.cnf 

vim /etc/my.cnf
basedir = /opt/mysql
datadir = /database/mysql/data
port = 3306

备注:目前 仅修改以上配置。

手工启动 mysql

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

查看 mysql 进程

1
2
3
[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

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

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

1
2
3
4
5
6
7
8
9
10
[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 客户端测试

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
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 启停方法

1
2
3
[root@db1 mysql]# service mysql start   
[root@db1 mysql]# service mysql stop
备注:如果提示服务不存在,执行以下。

将mysql的启动服务添加到系统服务中

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

四 参考

Installing MySQL Using a Standard Source Distribution
Linux MySQL 源码安装

原创文章,作者:carmelaweatherly,如若转载,请注明出处:https://blog.ytso.com/239593.html

(0)
上一篇 2022年2月12日
下一篇 2022年2月12日

相关推荐

发表回复

登录后才能评论