centos 7 源码方式安装mysql5.6
2021/9/29 19:12:07
本文主要是介绍centos 7 源码方式安装mysql5.6,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
mysql安装:参考文章1
mysql编译报错:参考文章2
1、首先,创建目录,输入命令:
mkdir /usr/local/mysql mkdir /usr/local/mysql/data
2、接着,进入/usr/local/mysql目录,下载mysql5.6的压缩包,输入命令:
cd /usr/local/mysql wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.22.tar.gz
注:如果没有安装wget,请执行命令:yum install wget
3、yum方式安装相关依赖包,输入命令:
yum -y install cmake bison git ncurses-devel gcc gcc-c++
4、创建一个用户名为mysql的用户并加入mysql用户组,输入命令:
groupadd mysql useradd -g mysql mysql
5、解压mysql-5.6.22.tar.gz,输入命令:
tar zxvf mysql-5.6.22.tar.gz
6、进入解压后的目录,开始编译,可能有点慢,输入命令:
cd mysql-5.6.22 cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_TCP_PORT=3306 -DMYSQL_USER=mysql -DENABLE_DOWNLOADS=1 make
(1)、make的过程,可能会出现问题,我这边报了一个错误,如下图所示:
(2)、解决办法:修改sql_acl.cc文件,找到报错的那一行,第3215行,把单引号改成双引号,输入命令:
vi /usr/local/mysql/mysql-5.6.22/sql/sql_acl.cc
修改后如下图所示:
(3)、保存之后,重新执行以下命令:
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_TCP_PORT=3306 -DMYSQL_USER=mysql -DENABLE_DOWNLOADS=1 make
7、安装,安装完成后,清理临时数据,输入以下命令:
make install make clean
8、修改目录属主权限,输入命令:
chown -R mysql:mysql /usr/local/mysql/data/ chown -R mysql:mysql /usr/local/mysql/
9、创建MySQL Server系统表
(1)、输入命令:
cd /usr/local/mysql/ scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data
(2)、此处报错,如下图所示:
(3)、解决办法,安装autoconf库:
yum -y install autoconf
(4)、安装完成后,重新执行命令:
scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data
(5)、把初始化生成的 /usr/local/mysql/my.cnf 配置文件的属主数组更改为mysql
chown -R mysql:mysql /usr/local/mysql
10、配置脚本启动
(1)、复制mysql启动shell脚本
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
(2)、启动MySQL,输入命令:
/etc/init.d/mysql status /etc/init.d/mysql start
(3)、启动成功
11、根据需要设置开机自动启动服务,依次输入以下命令:
chkconfig --add mysql chkconfig mysql on
12、设置mysql的软连接,输入命令:
ln -s /usr/local/mysql/bin/mysql /usr/bin
13、设置数据库密码
(1)、输入命令:
mysql -uroot -p
默认密码为空,直接按回车键
(2)、进入mysql命令行,输入命令:
set password for root@localhost = password('123456'); flush privileges;
(3)、输入exit,退出命令行,重新输入命令:
mysql -uroot -p
输入刚才设置的密码,就登录进来了。
14、接着用mysql管理工具,远程连接的时候,出现了MySQL 1130错误,解决办法:
(1)、进入mysql命令行,输入以下命令:
use mysql; update user set host = '%' where user ='root';
(2)、接着,可能会报错,ERROR 1062 (23000): Duplicate entry ‘%-root’ for key ‘PRIMARY’
(3)、查看一下host是否已经有了%这个值,有了就可以了,输入命令:
select host,user from user where user='root';
(4)、接着刷新一下,输入命令:
flush privileges;
15、 这时,mysql就已经装好了,其中遇到了一些问题,比如像这个问题:
Starting MySQL.The server quit without updating PID file (/[FAILED]mysql/
根据网上资料整了一下,发现还是一直这样,于是,进行了以下的操作:
(1)、删除/usr/local/mysql/data目录下的所有文件
(2)、删除/usr/local/mysql目录下的my.cnf文件
(3)、删除/etc/my.cnf文件
(4)、重新执行了以下命令:
scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data chown -R mysql:mysql /usr/local/mysql cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
(5)、后面发现/etc/my.cnf不会生成了,重新启动mysql服务成功,我也不知道是什么情况了,接着按照上面的操作配置就行了,也不知道是不是环境不一样还是怎样,跟之前我搭的好像又不太一样,后面再看看了,搭了那么久。。绝了。。
这篇关于centos 7 源码方式安装mysql5.6的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-16MySQL资料:新手入门教程
- 2024-11-16MySQL资料:新手入门教程
- 2024-11-15MySQL教程:初学者必备的MySQL数据库入门指南
- 2024-11-15MySQL教程:初学者必看的MySQL入门指南
- 2024-11-04部署MySQL集群项目实战:新手入门教程
- 2024-11-04如何部署MySQL集群资料:新手入门指南
- 2024-11-02MySQL集群项目实战:新手入门指南
- 2024-11-02初学者指南:部署MySQL集群资料
- 2024-11-01部署MySQL集群教程:新手入门指南
- 2024-11-01如何部署MySQL集群:新手入门教程