Mysql5.7.18版本(二进制包安装)自定义安装路径教程详解

发布时间 - 2026-01-11 02:12:54    点击率:

安装路径:/application/mysql-5.7.18

1.前期准备

mysql依赖

libaio
yum install -y libaio

创建用户mysql,以该用户的身份执行mysql

useradd -s /bin/false -M mysql

下载mysql二进制包并解压

cd /tools
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz
tar -zxf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz -C /application/

切换到/application目录,将mysql文件夹名改短,给mysql目录做一个软链接

cd /application/
mv mysql-5.7.18-linux-glibc2.5-x86_64/ mysql-5.7.18
ln -s mysql-5.7.18/ mysql

在mysql目录下创建mysql-files,该文件夹权限为750,递归设置mysql目录的所属组和所属用户

mkdir mysql/mysql-files
chmod 750 mysql/mysql-files
chown -R mysql:mysql mysql-5.7.18/

2.mysql目录内操作

cd mysql

初始化数据库

会在mysql目录内生成一个data目录,存放数据库的目录

bin/mysqld --initialize --user=mysql --basedir=/application/mysql --datadir=/application/mysql/data

返回结果最后一行的末尾有随机密码,我的记下来:wa0I:1w?V--a

2017-04-28T02:49:00.853710Z 1 [Note] A temporary password is generated for root@localhost: wa0I:1w?V--a

想设置默认密码为空则将--initialize选项替换为--initialize-insecure选项

bin/mysqld --initialize-insecure --user=mysql --basedir=/application/mysql --datadir=/application/mysql/data

安装ssl

bin/mysql_ssl_rsa_setup --datadir /application/mysql/data/

指定data目录的路径

更改所属用户和组

chown -R root .
chown -R mysql data mysql-files

除了mysql目录下的data目录和mysql-files目录所属用户不变,其他所有文件的所属用户改为root

修改配置文件

sed -i 's/^datadir=\/var\/lib\/mysql/datadir=\/application\/mysql\/data/g' /etc/my.cnf
sed -i 's/^socket=\/var\/lib\/mysql\/mysql.sock/socket=\/tmp\/mysql.sock/g' /etc/my.cnf
sed -i 's/^log-error=\/var\/log\/mariadb\/mariadb.log/log-error=\/application\/mysql\/data\/err.log/g' /etc/my.cnf
sed -i 's/^pid-file=\/var\/run\/mariadb\/mariadb.pid/pid-file=\/application\/mysql\/data\/mysql.pid/g' /etc/my.cnf

等价于:

vi /etc/my.cnf
datadir=/application/mysql/data
socket=/tmp/mysql.sock
log-error=/application/mysql/data/err.log
pid-file=/application/mysql/data/mysql.pid
/etc/my.cnf Content:
[mysqld]
datadir=/application/mysql/data
socket=/tmp/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
[mysqld_safe]
log-error=/application/mysql/data/err.log
pid-file=/application/mysql/data/mysql.pid
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

拷贝启动程序

cp support-files/mysql.server /etc/init.d/mysql

将mysql的启动程序拷贝到/etc/init.d/目录下,以便启动程序

编辑启动文件,配置启动目录

方法一:

思路是给配置文件提供的变量进行赋值。较麻烦。

sed -i 's/^basedir=/basedir=\/application\/mysql/g' /etc/init.d/mysql
sed -i 's/^datadir=/datadir=\/application\/mysql\/data/g' /etc/init.d/mysql
sed -i 's/^mysqld_pid_file_path=/mysqld_pid_file_path=\/application\/mysql\/data\/mysql.pid/g' /etc/init.d/mysql

等价于将45、46两行

basedir=
datadir=
mysqld_pid_file_path=

替换成

basedir=/application/mysql
datadir=/application/mysql/data
mysqld_pid_file_path=/application/mysql/data/mysql.pid

方法二(推荐):

思路是将脚本的默认地址(/usr/local/mysql)直接替换成自定义路径(/application/mysql),便不用给变量赋值

sed -i 's#/usr/local/mysql#/application/mysql#g' /etc/init.d/mysql

到这里mysql安装完成可以正常启动

3.后期结尾

命令创建软链接

将mysql命令创建软链接到环境变量的目录,使用户可以在变量找到相应的命令

ln -s /application/mysql/bin/* /usr/local/sbin

登录mysql

[root@www mysql]# mysql -u root -p

Enter password: #输入之前保存的随机密码drRR0

...

mysql> #成功登陆到mysql控制台

修改密码sql语句

mysql> alter user 'root'@'localhost' identified by 'NewPassWord';

#将密码修改为NewPassWord

Query OK, 0 rows affected (0.01 sec) #修改成功

键入quit或Ctrl + d退出

mysql> quit
Bye
[root@www mysql]#
or
mysql> ^DBye
[root@www mysql]#

4.常用命令

进入mysql

mysql -u root -p

启动mysql

service mysql start

停止mysql

service mysql stop

重启mysql

service mysql restart

以上所述是小编给大家介绍的Mysql5.7.18版本(二进制包安装)自定义安装路径教程详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# mysql5.7.18  # 二进制包安装  # mysql5.7二进制安装  # Centos7.5安装mysql5.7.24二进制包方式部署  # Linux下MySQL5.7.18二进制包安装教程(无默认配置文件my_default.cnf)  # Linux下如何通过MySQL二进制包安装MySQL5.7  # 自定义  # 递归  # 目录下  # 小编  # 配置文件  # 替换成  # 在此  # 会在  # 给大家  # 做一个  # 重启  # 所述  # 给我留言  # 感谢大家  # 两行  # 切换到  # 则将  # 为空  # 后期  # 修改密码 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: laravel怎么通过契约(Contracts)编程_laravel契约(Contracts)编程方法  Laravel如何与Docker(Sail)协同开发?(环境搭建教程)  作用域操作符会触发自动加载吗_php类自动加载机制与::调用【教程】  Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】  Laravel如何发送邮件和通知_Laravel邮件与通知系统发送步骤  瓜子二手车官方网站在线入口 瓜子二手车网页版官网通道入口  微信推文制作网站有哪些,怎么做微信推文,急?  Laravel如何优雅地处理服务层_在Laravel中使用Service层和Repository层  如何在万网ECS上快速搭建专属网站?  如何在服务器上三步完成建站并提升流量?  Java遍历集合的三种方式  如何挑选优质建站一级代理提升网站排名?  Windows驱动无法加载错误解决方法_驱动签名验证失败处理步骤  JavaScript如何实现路由_前端路由原理是什么  制作公司内部网站有哪些,内网如何建网站?  Laravel如何清理系统缓存命令_Laravel清除路由配置及视图缓存的方法【总结】  Laravel项目怎么部署到Linux_Laravel Nginx配置详解  HTML透明颜色代码怎么让图片透明_给img元素加透明色的技巧【方法】  如何在万网开始建站?分步指南解析  Laravel如何处理CORS跨域问题_Laravel项目CORS配置与解决方案  如何彻底卸载建站之星软件?  如何用AWS免费套餐快速搭建高效网站?  浅谈Javascript中的Label语句  Laravel如何实现模型的全局作用域?(Global Scope示例)  Angular 表单中正确绑定输入值以确保提交与验证正常工作  惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?  Laravel如何生成URL和重定向?(路由助手函数)  百度浏览器如何管理插件 百度浏览器插件管理方法  如何快速配置高效服务器建站软件?  Laravel怎么实现前端Toast弹窗提示_Laravel Session闪存数据Flash传递给前端【方法】  Windows11怎样设置电源计划_Windows11电源计划调整攻略【指南】  Laravel如何处理跨站请求伪造(CSRF)保护_Laravel表单安全机制与令牌校验  详解Huffman编码算法之Java实现  怎么用AI帮你设计一套个性化的手机App图标?  如何用wdcp快速搭建高效网站?  制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?  如何快速搭建虚拟主机网站?新手必看指南  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  Laravel如何使用缓存系统提升性能_Laravel缓存驱动和应用优化方案  Laravel如何处理JSON字段的查询和更新_Laravel JSON列操作与查询技巧  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  Python文件操作最佳实践_稳定性说明【指导】  微信小程序 HTTPS报错整理常见问题及解决方案  php增删改查怎么学_零基础入门php数据库操作必知基础【教程】  香港服务器网站推广:SEO优化与外贸独立站搭建策略  Linux系统运维自动化项目教程_Ansible批量管理实战  详解Android中Activity的四大启动模式实验简述  微信公众帐号开发教程之图文消息全攻略  教你用AI将一段旋律扩展成一首完整的曲子  详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点