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 #退出

相关推荐
vibecode5 分钟前
网站服务器失去响应怎么解决?我把连接超时和读超时这两段计时拆开跑了一遍
运维·服务器
字节跳动开源1 小时前
OpenViking 上线原生 3D 内容理解模型
数据库·开源
工业一体机老司机1 小时前
Docker部署工控机采集服务 Compose编排与开机自启
运维·docker·容器
迪康Defender2 小时前
终端供应链安全:应用白名单与软件正版化检测落地|终端安全治理实践
运维·服务器·网络·安全·web安全·自动化·运维开发
lzx_0022 小时前
Linux 进程(二) 深入理解进程
linux
沫璃染墨2 小时前
从零入门计算机网络系列(十二):HTTP长连接与会话管理详解——从Connection到Cookie与Session
linux·服务器·c++·tcp/ip·ubuntu·http·交互
温暖小土2 小时前
在 CentOS 上安装 Redis Stack
linux·redis·centos
CCIE-Yasuo3 小时前
网络安全-学习数据库-Mysql-2
数据库·学习·mysql
这个DBA有点耶3 小时前
内核级AI与多模融合:AI数据库在海外场景的落地要点
数据库·人工智能·架构
涛思数据(TDengine)3 小时前
从工业本体到 AI 原生:TDengine 出席 2026 QCon 分享工业数据基础设施路径
大数据·数据库·人工智能·tdengine·工业