您的位置:首页 > 运维架构 > Linux

Linux:MySQL5.6源码编译安装(详细)

2020-08-11 08:37 651 查看

基于CentOS7的MySQL5.6版本的源码编译安装

准备:mysql-5.6.22.tar.gz

1 准备环境

# yum remove -y  mariadb-libs
# yum install -y cmake
# yum install gcc gcc-c++ -y

2 创建mysql用户

# useradd -s /sbin/nologin -M -r mysql

3 创建数据目录并授权

# mkdir -p  /data/mysql
# chown mysql.mysql  /data/mysql/  -R

4 解压,预编译

# tar xvf mysql-5.6.22.tar.gz
# cd mysql-5.6.22
# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql5.6 \
-DMYSQL_DATADIR=/data/mysql \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DENABLED_LOCAL_INFILE=1

这一步有可能报错
Curses library not found. Please install appropriate package,
remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel.

解决:(其实可以在准备环境时就预先安装)

yum -y install ncurses-devel
rm -rf CMakeCache.txt

5 编译,安装

# make && make install

6 初始化

# /usr/local/mysql/scripts/mysql_install_db --user=mysql  --datadir=/data/mysql --basedir=/usr/local/mysql

有可能报错
FATAL ERROR: please install the following Perl modules before executing ./scripts/mysql_install_db:
Data::Dumper
解决:

yum -y install autoconf

(这其实也可以在环境准备阶段安装)

7 创建配置文件并启动服务

# cd /usr/local/mysql/
# cp support-files/my-default.cnf /etc/my.cnf
# ./bin/mysqld_safe &

mysql5.6 不需要用mysqladmin进行数据库的初始密码设置,默认是没有密码的
直接 /usr/local/mysql5.7/bin/mysql -uroot 就可以进入数据库。

8 关闭服务:

# /usr/local/mysql/bin/mysqladmin  shutdown

9 创建快捷方式启停服务器

/usr/local/mysql5.7/support-files/ 有一个MySQL自带的脚本 mysql.server
将这个脚本复制到/etc/init.d/下: cp mysql.server /etc/init.d/mysqld

之后就可以用:/etc/init.d/mysqld stop
/etc/init.d/mysqld start 来控制数据库服务的启停

以上就是MySQL源码编译安装的过程,可能会报很多错误,需要帮助可以留言哦。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: