Linux编译安装MySQL__5.7.26记录
系统:centos7.4(3.10内核)
1、查找并清除自带的数据库
# rpm -qa | grep mariadb
# rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64
2、opt目录下存放源码包
# cd /opt
# wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26.tar.gz
3、编译时需要的库
# wget http://downloads.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
4、相关依赖
# yum install cmake gcc gcc-c++ ncurses-devel bison zlib libxml openssl automake autoconf make libtool bison-devel libaio-devel
# yum install openssl-devel
5、添加MySQL用户和组(用于启动服务)
# groupadd mysql
# useradd -d /home/myql -g mysql -m mysql
# id mysql
6、新建相关目录,并赋权限给mysql用户
# mkdir /usr/local/mysql
# mkdir /usr/local/mysql/data
# mkdir -p /usr/local/mysql/log
# mkdir -p /usr/local/mysql/run
# mkdir -p /usr/local/mysql/tmp
# chown -R mysql:mysql /usr/local/mysql/ //赋予权限
# cd /usr/local
# ll //用户组、用户为mysql
# cd /usr/local/mysql
# ll //用户组、用户为mysql
# chmod -R 755 /usr/local/mysql/ //修改权限
7、解包
# cd /opt
# tar -zxvf mysql-5.7.26.tar.gz
# tar -zxvf boost_1_59_0.tar.gz
8、编译&安装
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DINSTALL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_SSL=yes -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/usr/local/mysql/run/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DSYSCONFDIR=/etc -DWITH_READLINE=on -DWITH_BOOST=/opt/boost_1_59_0
# echo $? //显示0说明正常
# make
# echo $? //显示0说明正常
# make install
# echo $? //显示0说明正常
# cd /usr/local/mysql/bin
# touch /usr/local/mysql/log/mysqld.log //新建日志文件
# chown -R mysql:mysql /usr/local/mysql/log/mysqld.log //修改文件权限
# mkdir /etc/mysql
# cd /etc/mysql
# vi my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/usr/local/mysql/run/mysql.sock
user=mysql
symbolic-links=0
[mysqld_safe]
log-error=/usr/local/mysql/log/mysqld.log
pid-file=/usr/local/mysql/run/mysqld.pid
# cd /usr/local/mysql/bin
9、初始化
# ./mysqld --defaults-file=/etc/mysql/my.cnf --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
得到临时密码:ubovCIT+Z6ie
10、启动mysqld服务。MySQL 官方推荐使用 mysqld_safe 启动 mysqld 服务。mysqld_safe 增加了一些安全特性,比如它会在遇到错误时重启 mysqld 服务,并把运行时信息记录到 error log 中。
# ./mysqld_safe --defaults-file=/etc/mysql/my.cnf --user=mysql
新开ssh,查看进程
# ps -ef | grep mysqld #有进程说明服务正常
# kill -9 mysqld_safe进程号
11、添加服务
# cd /usr/local/mysql
# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
# chmod 755 /etc/init.d/mysqld
# chkconfig --add mysqld
# chkconfig --list mysqld
12、添加mysql的环境变量
# vim /etc/profile
最后一行添加
export PATH=/usr/local/mysql/bin:$PATH
# source /etc/profile
13、启动服务
service mysqld start //提示Starting MySQL. SUCCESS!
14、登录MySQL,密码用初始化时生成的临时密码
mysql -uroot -p密码
执行sql会报错,需要修改密码
mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
mysql> set PASSWORD=PASSWORD('xxxxxxxx');
Query OK, 0 rows affected, 1 warning (0.01 sec)
mysql> alter user 'root'@'localhost' PASSWORD EXPIRE NEVER;
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
退出
mysql>exit
重新登录,再执行mysql> show databases;
远程访问数据库
mysql>grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
mysql>flush privileges;
15、停止防火墙
systemctl stop firewalld.service
开机禁止防火墙
systemctl disable firewalld.service
Linux编译安装MySQL__5.7.26记录的更多相关文章
- 【转】linux 编译安装nginx,配置自启动脚本
linux 编译安装nginx,配置自启动脚本 本文章来给各位同学介绍一篇关于linux 编译安装nginx,配置自启动脚本教程,希望有需要了解的朋友可一起来学习学习哦. 在公司的suse服务器装ng ...
- Ubuntu14.04编译安装mysql5.6.26
Ubuntu14.04编译安装mysql5.6.26 (1)安装编译源码需要的包 sudo apt-get install make cmake gcc g++ bison libncurses5-d ...
- linux 编译安装nginx,配置自启动脚本
本文章来给各位同学介绍一篇关于linux 编译安装nginx,配置自启动脚本教程,希望有需要了解的朋友可一起来学习学习哦. 在公司的suse服务器装nginx,记录下安装过程: 参照这篇文章:Linu ...
- Linux 编译安装、压缩打包、定时任务
目录 Linux 编译安装 知识储备: wget命令 编译安装 Linux 压缩打包 gzip压缩 bzip2压缩 tar打包 Linux 定时任务 相关文件及操作 Linux 编译安装 编译安装就是 ...
- linux 编译安装PHP模块
本文移到:http://www.phpgay.com/Article/detail/classid/6/id/54.html linux 编译安装PHP模块 1.首先你要有你服务器上安装的PHP的版 ...
- [CentOS_7.4]Linux编译安装ffmpeg
[CentOS_7.4]Linux编译安装ffmpeg 安装过程: 下载安装源,配置,编译,安装,设置环境变量. # wget http://www.ffmpeg.org/releases/ffm ...
- 转:Linux 编译安装 Mysql5.7
http://broqiang.com/2017/04/18/Mysql-Install-5.7.18-Linux-Compile/ 原文 Linux 编译安装 Mysql5.7 Ubuntu 下快速 ...
- Linux编译安装Apache+PHP
Linux编译安装Apache+PHP 来自:自学it网,http://www.zixue.it/. 1]编译安装Apache+PHP 1.安装程序依赖库和开发环境 为了省事把所需要的库文件全都安 ...
- Linux编译安装Qt 5.4.1(-qt-xcb是必须要指定的,卸载自带的gcc等)
转载请注明文章:Linux编译安装Qt 5.4.1 出处:多客博图 很久不写文章了,过程很简单,但是操作很多,简单说吧. 前言: 操作系统CentOS 6.6,64位的. 1.安装gcc 4.8.4, ...
- Linux编译安装、压缩打包、定时任务管理
编译安装 压缩打包 定时任务管理 一.编译安装 使用源代码,编译打包软件 1.特点 1.可以定制软件 2.按需构建软件 2.编译安装 1.下载源代码包 wget https://nginx.org/d ...
随机推荐
- Vue——前端框架
Vue Vue 快速入门 <!DOCTYPE html> <html lang="en"> <head> <meta char ...
- 图解连接阿里云(二)使用Paho-MQTT(支持FreeRTOS版本、Linux版本)连接1MQTT测试服务器 2阿里云物联网平台
前沿提要: MQTT是什么不知道? 看这一篇:https://www.cnblogs.com/happybirthdaytoyou/p/10362336.html 阿里云官网玩不转? 看这一篇: ht ...
- 【赵渝强老师】Kubernetes平台中日志收集方案
一.K8s整体日志收集方案 整体的日志收集方案,如下图所示: Filebeat是本地文件的日志数据采集器,可监控日志目录或特定日志文件(tail file),并将它们转发给Elasticsearch或 ...
- Linux运行脚本./XXXsh: line 1: $‘\r‘: command not found问题
Linux运行脚本./XXXsh: line 1: $'\r': command not found问题 在执行./xxx.sh命令时,系统报错: ./xxx.sh: line 1: $'\r': ...
- transaction_timeout:达到事务超时时终止会话
功能实现背景说明 我们已经有两个参数来控制长事务:statement_timeout 和 idle_in_transaction_session_timeout.但是,如果事务执行的命令足够短且不超过 ...
- CPU缓存伪共享
CPU缓存什么东西?当然这个问题很多人有可能觉得比较傻,CPU缓存什么,肯定是缓存数据(代码)啊,要不然还能缓存啥,这个确实没问题,但是CPU到底缓存什么样的数据呢?因为对CPU来说,无论是指令,还是 ...
- 2023年11月中国数据库排行榜:OPO组合持续两月,亚信、中兴闯进前十
长夜之中蓄力待,势如破晓初光披. 2023年11月的 墨天轮中国数据库流行度排行 火热出炉,本月共有283个数据库参与排名.本月排行榜前十名变动较大,TiDB 上升一位居第4,达梦奋勇向前重归第6,亚 ...
- DDD实体和对象
实体 entity 标识符用来唯一定位一个对象,在数据库中我们一般用表的主键来实现标识符,主键和标识符的思考角度不同,就是 id 字段 : 实体:拥有唯一的标识符,标识符的值不会改变,而其他对象的状态 ...
- 使用datagrip时,报错 connection refused
因为数据库没有开启 : 打开终端 输入(管理员身份): net start mysql80 (这是你的数据库的名字)
- SpringBoot进阶教程(八十二)Spring Security图形验证码
在之前的博文<SpringBoot进阶教程(八十)Spring Security>中,已经介绍了在Spring Security中如何基于formLogin认证.基于HttpBasic认证 ...