编译安装mysql 5.6.40

2020-04-29 14:04:01 浏览数 (1)

环境说明 系统版本 CentOS 7.2 x86_64 软件版本 mysql-5.6.40

编译步骤如下:

代码语言:javascript复制
[root@db01 ~]# mkdir -p /service/tools
[root@db01 ~]# mkdir /application
[root@db01 ~]# yum install ncurses-devel libaio-devel cmake gcc gcc-c   glibc openssl-devel bison-devel -y
[root@db01 ~]# useradd -s /sbin/nologin -M mysql
[root@db01 ~]# cd /service/tools/
[root@db01 tools]# wget https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.6/mysql-5.6.40.tar.gz
[root@db01 tools]# tar xf mysql-5.6.40.tar.gz
[root@db01 tools]# cd mysql-5.6.40/
[root@db01 tools]# cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.40 
-DMYSQL_DATADIR=/application/mysql-5.6.40/data 
-DMYSQL_UNIX_ADDR=/application/mysql-5.6.40/mysql.sock 
-DDEFAULT_CHARSET=utf8 
-DDEFAULT_COLLATION=utf8_general_ci 
-DWITH_EXTRA_CHARSETS=all 
-DWITH_INNOBASE_STORAGE_ENGINE=1 
-DWITH_FEDERATED_STORAGE_ENGINE=1 
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 
-DWITH_ZLIB=bundled 
-DWITH_SSL=bundled 
-DENABLED_LOCAL_INFILE=1 
-DWITH_EMBEDDED_SERVER=1 
-DENABLE_DOWNLOADS=1 
-DWITH_DEBUG=0
[root@db01 tools]# make && make install

参数说明:

代码语言:javascript复制
cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.40 	#指定安装目录
-DMYSQL_DATADIR=/application/mysql-5.6.40/data 		#指定数据data目录
-DMYSQL_UNIX_ADDR=/application/mysql-5.6.40/mysql.sock  #指定sock路径
-DDEFAULT_CHARSET=utf8 									#指定默认字符集
-DDEFAULT_COLLATION=utf8_general_ci 					#指定默认校验规则
-DWITH_EXTRA_CHARSETS=all 								#指定扩展支持的字符集
-DWITH_INNOBASE_STORAGE_ENGINE=1 						#启用innodb存储引擎
-DWITH_FEDERATED_STORAGE_ENGINE=1 						#启用Federated存储引擎
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 						#启用BLACKHOLE引擎
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 						#禁用EXAMPLE_STORAGE_ENGINE
-DWITH_ZLIB=bundled 										#启用zlib支持
-DWITH_SSL=bundled 										#启用ssl库支持
-DENABLED_LOCAL_INFILE=1 								#启用加载本地数据
-DWITH_EMBEDDED_SERVER=1 								#嵌入式服务器
-DENABLE_DOWNLOADS=1 									#编译时允许自主下载相关文件
-DWITH_DEBUG=0												#禁用调试模式

后续步骤:

代码语言:javascript复制
[root@db01 mysql-5.6.40]# ln -s /application/mysql-5.6.40/ /application/mysql  #创建软链接
[root@db01 mysql-5.6.40]# cp support-files/my*.cnf /etc/my.cnf  #拷贝配置文件
[root@db01 mysql-5.6.40]# /application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data --user=mysql  #初始化
[root@db01 mysql-5.6.40]# chown -R mysql:mysql  /application/mysql/  #修改目录所属
[root@db01 mysql-5.6.40]# cp support-files/mysql.server /etc/init.d/mysqld  #拷贝启动脚本
[root@db01 mysql-5.6.40]# chmod  x /etc/init.d/mysqld  #添加执行权限
[root@db01 mysql-5.6.40]# ll /etc/init.d/mysqld  #检查
-rwxr-xr-x 1 root root 10619 7月   1 16:06 /etc/init.d/mysqld
[root@db01 mysql-5.6.40]# /etc/init.d/mysqld start  #启动mysql
Starting MySQL.Logging to '/application/mysql-5.6.40/data/db01.err'.
 SUCCESS!
[root@db01 mysql-5.6.40]# ln -s /application/mysql/bin/* /usr/bin/ #创建命令快捷方式
或者
[root@db01 ~]# echo 'PATH=/application/mysql/bin/:$PATH' >>/etc/profile
[root@db01 ~]# tail -1 /etc/profile
[root@db01 ~]# source /etc/profile

基本优化(清理用户及无用数据库)

代码语言:javascript复制
mysql> select user,host from mysql.user;
mysql> drop user ''@'db01';
mysql> drop user ''@'localhost';
mysql> drop user 'root'@'db01';
mysql> drop user 'root'@'::1';
mysql> select user,host from mysql.user;
mysql> drop database test;
mysql> show databases;
或者根据mysql_secure_installation命令进行向导优化

0 人点赞