liunx安装mysql源码方法

本文档详细介绍了如何在Linux系统上通过源码方式安装MySQL 5.6.12。首先从MySQL官网下载源码,然后安装依赖包,创建MySQL用户和用户组,接着进行解压、配置、编译、安装,最后初始化数据库,设置开机启动,创建默认用户并设置权限。
摘要由CSDN通过智能技术生成

 首先到MySQL官网下mysql-5.6.12上传到服务器上,下面说一下详细的安装过程。
安装依赖包,可以在线更新也可以配置本地源(CentOS本地源配置)

wget  http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.15.tar.gz
下载镜像文件
yum -y install cmake make ncurses-devel gcc gcc-c++ bison perl
创建MySQL用户和用户组

/usr/sbin/groupadd mysql
/usr/sbin/useradd -g mysql mysql

解压缩

tar  -zxvf mysql-5.6.12.tar.gz
cd mysql-5.6.12

MySQL5.5之前的版本是configure现在是cmake,格式略有不同,以下使用了换行符,如果不用换行符则在同一行。

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DSYSCONFDIR=/usr/local/mysql \
-DMYSQL_DATADIR=/home/data/mysql/3306/data \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DMYSQL_USER=mysql

编译安装

make
make install

更改目录所有者为mysql并创建相关目录

chown -R mysql:mysql /usr/local/mysql
mkdir -p /home/data/mysql/3306/data/
mkdir -p /home /data/mysql/3306/binlog/
mkdir -p /home /data/mysql/3306/relaylog/
chown -R mysql:mysql /home /data/mysql/

对数据库进行初始化

/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql \
--datadir=/home/data/mysql/3306/data --user=mysql --defaults-file=/usr/local/mysql/my.cnf \
--explicit_defaults_for_timestamp

这里需要注意一下,如果初始化的时候报错如下:

[root@localhost mysql-5.6.21]# /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql \
> --datadir=/home/data/mysql/3306/data --user=mysql --defaults-file=/usr/local/mysql/my.cnf \
> --explicit_defaults_for_timestamp
FATAL ERROR: please install the following Perl modules before executing /usr/local/mysql/scripts/mysql_install_db:
Data::Dumper
则这里是需要安装autoconf,执行 yum -y install autoconf即可没有保存则继续. . . . . .



删除默认配置文件并设置开机启动

rm -rf /etc/my.cnf    --这里需要注意下删掉默认my.conf。启动时会加载安装目录同级的my.cnf文件,如果报大小写相关的bug,找到该文件加入lower_case_table_names=1这行代码忽略大小写即可

cd support-files/
cp mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on

启动MySQL

service mysqld start

停止
service mysqld stop
或者 mysqladmin -u root -p shutdown

#登录MySQL并创建默认用户
#登陆mysql

/usr/local/mysql/bin/mysql

#登录后再MySQL命令界面下执行如下命令创建root用户,并将密码也设置成root(当然可以设置为其他值)

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'root';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'127.0.0.1' IDENTIFIED BY 'root';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root';

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值