MySQL编译安装

1.源码包地址

2.编译/安装

3.设置环境变量

4.初始化/登录

地址:

MYSQL源码包下载

右键复制链接 使用wget 下载到/usr/local/src下

再使用rpm --ivh 安装

--这个时候跳转到 cd /root/rpmbuild/SOURCES 使用ll查看有什么东西

yum -y install gcc gcc-c++ ncurses ncurses-devel bison cmake --编译安装

--创建用户

useradd -s /sbin/nologin mysql

--解压SOURCE里的两个包

tar -zxvf mysql-5.7.17.tar.gz -C /opt

tar -jxvf boost_1_59_0.tar.bz2 -C /usr/local/

--重命名--

mv /usr/local/boost_1_59_0 /usr/local/boost

--cmake编译安装

cd /opt/mysql-5.7.17/

cmake \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \ -DSYSCONFDIR=/etc \

-DSYSTEMD_PID_DIR=/usr/local/mysql \ -DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_EXTRA_CHARSETS=all \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_ARCHIVE_STORAGE_ENGINE=1 \

-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \

-DMYSQL_DATADIR=/usr/local/mysql/data \ -DWITH_BOOST=/usr/local/boost \

-DWITH_SYSTEMD=1

------------安装----------

make -j 3 && make install

--配置

vim /etc/my.cnf

---内容

复制代码
[client] #客户端设置
port = 3306
socket=/usr/local/mysql/mysql.sock
[mysqld] #服务全局设置
user = mysql #设置管理用户
basedir=/usr/local/mysql #指定数据库的安装目录
datadir=/usr/local/mysql/data #指定数据库文件的存储路径
port = 3306 #指定端口
character-set-server=utf8 #设置服务器字符集编码格式为utf8
pid-file = /usr/local/mysql/mysqld.pid #指定pid 进程文件路径
socket=/usr/local/mysql/mysql.sock #指定数据库连接文件
bind-address = 0.0.0.0 #设置监听地址,0.0.0.0代表允许所有,如允许多个IP需空格隔开
skip-name-resolve #禁用DNS解析
max_connections=2048 #设置mysql的最大连接数
default-storage-engine=INNODB #指定默认存储引擎
max_allowed_packet=16M #设置数据库接收的数据包大小的最大值
server-id = 1 #指定服务ID号

--设置环境变量

echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile

---初始化数据库

cd /usr/local/mysql/bin/

./mysqld \

--initialize-insecure \

--user=mysql \

--basedir=/usr/local/mysql \

--datadir=/usr/local/mysql/data

--加入系统服务管理

cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/

--给root设置密码

mysqladmin -u root -p password "123456"

#直接回车,不用输入密码

root@test2 bin# mysql -u root -p #登录

mysql> show databases ;

mysql>quit #退出

相关推荐
Zhu758几秒前
使用helm在k8s集群部署MySQL单实例,支持当前所有主版本的最新子版本
mysql·adb·kubernetes
自由能燃气设备12 分钟前
燃气容积式热水器厂家选购指南:2026年商用热水设备采购避坑手册
大数据·数据库·数据仓库·人工智能
mounter62526 分钟前
突破单点限制:BPF 多跟踪点高效附加机制与新 ftrace 架构解析
linux·ebpf·linux kernel·kernel·ftrace
oradh28 分钟前
Oracle数据文件的大小和数量的限制总结
数据库·oracle·数据文件大小限制·数据文件数量限制
刘某的Cloud30 分钟前
Galera Cluster部署 mariadb 节点down机,log sequence number恢复
linux·运维·数据库·负载均衡·mariadb·集群·高可用
xiaohaiAIgeo31 分钟前
【2026年】ASHRAE 110与EN 14175通风柜测试标准对比:进口与国产品牌性能差距
java·前端·数据库·科普知识
SelectDB33 分钟前
Apache Doris 4.1 Spill to Disk:避免运行内存密集型查询发生 OOM
数据库
小此方34 分钟前
Re:Linux系统篇(五十四)线程篇 · 七:互斥锁的底层实现原理:从硬件上下文、原子交换指令(Swap)到并发封装实战
linux·运维·驱动开发
郭涤生1 小时前
rootfs 详解与裁剪优化记录
linux·c++·bsp
范什么特西1 小时前
redis题目面渣重点
数据库·redis·缓存