opensuse15.1安装mysql5.7

本文档详细介绍了如何在openSUSE 15.1上手动编译并安装MySQL 5.7。包括安装依赖、下载源码、配置编译、安装服务、初始化数据库、设置用户权限以及添加环境变量等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安装gcc

./configure --enable-threads=posix --disable-checking --disable-multilib --enable-languages=c,c++


zypper -n install git
zypper -n install insserv-compat
zypper -n install libtirpc-devel

 

cd /tmp
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26.tar.gz
tar xvzf mysql-5.7.26.tar.gz
cd mysql-5.7.26/

# 清除之前的生成和缓存
make clean
rm CMakeCache.txt

# 默认安装在/usr/local/mysql下 DENABLED_LOCAL_INFILE=1设定local-infile的默认值 该值决定mysql客户端也就是mysql/bin/mysql能否使用load data语句
cmake . -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/tmp/boost -DENABLED_LOCAL_INFILE=1
# 指定安装在/opt/mysql下 会影响service文件以及mysql mysqld mysqldump等文件安装路径
# cmake . -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/tmp/boost -DENABLED_LOCAL_INFILE=1 -DCMAKE_INSTALL_PREFIX=/opt/mysql -DSYSCONFDIR=/etc/mysql
make
make install

# 添加组和用户 -r表示系统用户 -g表示组 -s表示所使用的shell为/bin/false 禁止登陆
groupadd mysql
useradd -r -g mysql -s /bin/false mysql

# 源码编译时cmake选项DINSTALL_LAYOUT决定了secure_file_priv的默认值 该值把load data语句使用到的infile文件限制在一个目录中
# DINSTALL_LAYOUT默认等于standalone 使得secure_file_priv默认等于null 使得mysql不能使用load data语句(可以接受)
# DINSTALL_LAYOUT如果设置为未列出的值 会使得secure_file_priv默认等于/usr/local/mysql/mysql-files 如果该目录不存在 mysql服务将无法启动
cd /usr/local/mysql
mkdir mysql-files
chown mysql:mysql mysql-files
chmod 750 mysql-files

# 初始化mysql --initialize-insecure表示无root密码 方便后续登录设置密码 --log-timestamps=SYSTEM使得初始化mysql数据库的打印时间戳不至于跟本地差8小时
bin/mysqld --initialize-insecure --user=mysql --log-timestamps=SYSTEM
sleep 5
bin/mysql_ssl_rsa_setup
chown mysql:mysql data/*.pem
# --mysqld-safe-log-timestamps=SYSTEM使得mysqld_safe打印时间戳不至于跟本地差8小时
# mysqld的打印还是用的utc时间,跟本地差了8小时,除非在my.cnf中指定了log-timestamps=SYSTEM
bin/mysqld_safe --user=mysql --mysqld-safe-log-timestamps=SYSTEM &

mysql -u root --skip-password
ALTER USER 'root'@'localhost' IDENTIFIED BY 'mysql';
update mysql.user set host = '%' where user = 'root';
flush privileges;
exit


cp /tmp/mysql-5.7.26/support-files/mysql.server /etc/init.d/mysql
chmod +x /etc/init.d/mysql
chkconfig --add mysql

# 添加环境变量 对opensuse15.1而言 推荐添加在/etc/profile.local centos7则是在/etc/profile.d/下面创建sh文件添加进去
cat >> /etc/profile.local <<EOF
export PATH=$PATH:/usr/local/mysql/bin
export MANPATH=$MANPATH:/usr/local/mysql/man
EOF

source /etc/profile.local
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值