centos7编译安装mysql5.6

发布 : 2019-05-17 分类 : 数据库 浏览 :

编译安装需要以下步骤:

1. 安装相关依赖包

1
2
yum install -y gcc gcc-c++ ncurses-devel
yum install perl-version perl-Data-Dumper

2. 安装编译mysql所需要的软件

安装cmake

1
wget https://cmake.org/files/v3.9/cmake-3.9.0.tar.gz

进入cmake目录

1
cd cmake

开始配置

1
./configure

开始编译安装

1
make && make install

3. 创建mysql用户、安装目录和数据目录

创建mysql用户

1
groupadd mysql && useradd -g mysql -s /bin/false mysql      #创建一个不能登录的用户

创建mysql数据目录,并设置权限

1
mkdir -p /data/mysql && chown -R mysql.mysql /data/mysql

删除系统默认的配置文件

1
rm -rf /etc/my.conf

4. 开始编译安装mysql5.6

下载mysql5.6源码包

1
wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.16.tar.gz

解压源码包并进入目录

1
tar-zxvf mysql-5.6.16.tar.gz && cd mysql-5.6.16

生成编译配置

1
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DDEFAULT_CHARSET=utf8mb4 -DDEFAULT_COLLATION=utf8mb4_general_ci

开始编译安装

1
make && make install

初始化数据目录

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

软连接mysql配置文件到/etc目录

1
ln -s /usr/local/mysql/my.cnf /etc/my.cnf

拷贝mysql控制脚本,将mysql加入开机启动

1
cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld && chmod a+x /etc/init.d/mysqld && chkconfig mysqld on && service mysqld start

将mysql服务加入系统环境变量

1
echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile && source /etc/profile

设置root账户远程访问密码 刚开始编译安装好的mysql默认没有密码 可以通过 /usr/local/mysql/bin/mysql_secure_installation 命令设置root密码

mysql远程连接授权

1
2
grant all privileges on *.* to 'name'@'%' identified by '密码' with grant option;
flush privileges;

5. mysql数据库问题

使用 mysql -uroot -p 出现 Access denied for user ‘root‘@’localhost’ (using password: YES),解决方法如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
/etc/init.d/mysqld stop     #停止mysql服务

mysqld_safe --user=mysql --skip-grant-tables --skip-networking & #进入安全模式

mysql -u root

mysql> UPDATE user SET Password=PASSWORD(’密码’) where USER=’root’;

mysql> FLUSH PRIVILEGES;

mysql> quit

/etc/init.d/mysqld restart

mysql -u root -p

Enter password: <输入设置的密码>

结语

以上步骤都顺利完成后,说明centos系统已经成功安装好mysql了,你也可以用以下命令查看是否有mysql进程:

1
2
ps -ef | grep mysqld    #查看是否有mysql进程
netstat -nltp | grep 3306 #查看3306端口是否被监听

以上教程是我在工作中总结出来的,希望对大家有所帮助,积极去尝试!

知识 & 情怀 | 二者兼得

微信扫一扫, 向我投食

微信扫一扫, 向我投食

支付宝扫一扫, 向我投食

支付宝扫一扫, 向我投食

留下足迹