编译安装mysql5.7
2024-09-04 23:31:14
注意版本和此次更新时间 2018-3-11 版本:mysql-5.7.x 环境:linux7.x
C/C++编译器安装
yum install gcc g++ -y
CMake
是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的makefile。
我们直接yum install cmake -y 即可
如果版本太低,可以去https://cmake.org/files/v3.4/cmake-3.4.1.tar.gz
下载后手动编译安装
安装boost:
下载源码包:
wget http://jaist.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.zip
解压
unzip boost_1_59_0.zip
mv boost_1_59_0 /usr/local/boots
cd /usr/local/boost
编译安装:
./bootstrap.sh
./b2
sudo ./b2 install
测试代码
#cat test.cpp
#include <boost/lexical_cast.hpp>
#include <iostream>
int main()
{
using boost::lexical_cast;
int a= lexical_cast<int>("123456");
double b = lexical_cast<double>("123.456");
std::cout << a << std::endl;
std::cout << b << std::endl;
return 0;
}
编译测试
--g++ -o test test.cpp
#ls
test test.cpp
# ./test
123456
123.456
开始编译mysql
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_BOOST=/usr/local/boost
这个地方有一个坑,就是设置boost的目录,(-DWITH_BOOST=/usr/local/boost) 一定要设置好,根据上面步骤安装的boost文件路径。
如果一切没错,请执行make (编译) 大约需要1-2小时左右
如果一切没问题,则要make install 执行安装
配置:
1. 了解配置文件到底放哪了
./mysqld --verbose --help | grep cnf
./mysqld --verbose --help | grep -A 1 'Default options'
这时会发现 /etc/mysql/my.cnf /etc/my.cnf ~/.my.cnf
有这么一行,这代表它mysql会读取配置文件,按顺序读,直至读到位置。
接下来们来模拟my.cnf丢失的情况
2.配置my.cnf重要参数,进行启动
[client]
port = 3306
socket = /usr/local/mysql/data/mysql.sock
[mysqld]
port = 3306
socket = /usr/local/mysql/data/mysql.sock
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
[mysqld_safe]
log-error=/usr/local/mysql/log/mysql.log
pid-file=/usr/local/mysql/mysql.pid
3.初始化数据库。这个很重要
(根据自己的目录来)
mysqld --initialize --user=smartom --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/
初始化数据库后会有有一个临时密码
4.初始化完成之后进入mysql/bin目录
指定配置文件路径,指定mysql的用户名
./mysqld_safe --defaults-file=/etc/mysql/my.cnf --user=smartom&
如果不能运行监测目录权限 和加入参数
这地方一个坑就是 user参数一定要指定好该文件的用户名
修改密码 否则不能运行(有点特殊 )
1.找到my.cnf | 本机 /etc/my.cnf
2.[mysqld]#下添加
skip-grant-tables=1 #不用验证
3.开启mysql /etc/init.d/mysqld start|本机默认地址
4.进入并修改(依次命令)
1. mysql -uroot -p;
2.use mysql
3.update user set authentication_string = password('123456'), password_expired = 'N', password_last_changed = now() where user = 'root';
最新文章
- 在win7环境下批量修改文件权限
- vsftpd.conf Details
- Android开发探秘之一:创建可以点击的Button
- 一个noconsole程序
- 基于SharePoint 的企业信息平台架构
- SqlServer数据库设计,纠结的问题,有胆你就来!
- jquery简单的拖动效果
- ios获取权限
- 9. KNN和Sparse构图
- 修改MySQL默认最大连接数
- Bootstrap禁用响应式布局
- ios学习之category设计模式
- 使用JAVA开发微信公众平台(一)——环境搭建与开发接入
- Git与Github的连接与使用
- BI 系列随笔列表 (SSIS, SSRS, SSAS, MDX, SQL Server)
- 源码分析八( hashmap工作原理)
- 题解——洛谷P3275 [SCOI2011]糖果
- rbac集成 权限分配。之角色管理
- Jquery 让contains不区分大小写
- rac 10g 10.2.0.1升级到10.2.0.5具体解释
热门文章
- Pacman命令介绍
- SQL*Plus连接符拼接输出
- 怎样用CMD命令强行删除文件?
- XXS level5
- 51Nod 1084:矩阵取数问题 V2(多维DP)
- mvc core2.1 Identity.EntityFramework Core 用户Claims查看(七)
- How to generate a new dictionary file of mmseg
- crash - JNI WARNING: input is not valid modified utf-8: illegal continuation byte
- 【BZOJ4553】【TJOI2016】【HEOI2016】序列
- mysql的utf8与utf8mb4 异同;utf8mb4_unicode_ci 与 utf8mb4_general_ci 如何选择