Linux安装MySQL的详细图文教程
<div id="navCategory"><h5 class="catalogue">目录</h5><ul class="first_class_ul"><li>前言</li><li>一、下载mysql安装包地址</li><li>二、环境准备<ul class="second_class_ul"><li>1、查看是否已经安装 Mysql</li><li>2、清空 /etc/ 目录下的 my.cnf</li><li>3、删除 mariadb</li><li>4、清空带有 mysql 的所有文件:</li><li>5、检查并安装依赖库</li><li>6、 解压 MySQL 压缩包并更名</li><li>7. 创建 mysql 组和用户</li></ul></li><li>三、设置 MySQL 配置文件 <code>my.cnf</code><ul class="second_class_ul"></ul></li><li>四、Mysql 初始化<ul class="second_class_ul"></ul></li><li>五、启动并登录 MySQL,设置 MySQL 开机自启动<ul class="second_class_ul"></ul></li></ul></div><p class="maodian"></p><h2>前言</h2><p>MySQL是一种关系型数据库管理系统,所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型和大型网站的开发都选择 MySQL 作为网站数据库。</p>
<p class="maodian"></p><h2>一、下载mysql安装包地址</h2>
<p>选择对应的包 mysql 8.X(因为我装的系统是debian系统所以我选择的是对应的版本)</p>
<p>mysql离线安装链接 :https://downloads.mysql.com/archives/community/</p>
<p style="text-align:center"><img alt="" src="https://zhuji.jb51.net/uploads/allimg/20250808/2-250PQARH39.png" /></p>
<p>下载好后传到服务器中</p>
<p class="maodian"></p><h2>二、环境准备</h2>
<p class="maodian"></p><h3>1、查看是否已经安装 Mysql</h3>
<div class="dxycode"><pre class="brush:bash;"># 如果没有什么返回信息,说明没有安装 Mysql
rpm -qa | grep mysql</pre></div>
<p class="maodian"></p><h3>2、清空 /etc/ 目录下的 my.cnf</h3>
<p>执行以下命令删除 my.cnf 文件:</p>
<div class="dxycode"><pre class="brush:bash;">rm -rf /etc/my.cnf</pre></div>
<p class="maodian"></p><h3>3、删除 mariadb</h3>
<p>使用 yum 命令删除 mariadb:</p>
<div class="dxycode"><pre class="brush:bash;"># 卸载mariadb,mariadb和mysql一起安装会有冲突,所以需要卸载掉
rpm -qa | grep mariadb
yum -y remove mariadb</pre></div>
<p class="maodian"></p><h3>4、清空带有 mysql 的所有文件:</h3>
<p>使用 find 命令查找并删除所有包含 mysql 的文件:</p>
<div class="dxycode"><pre class="brush:bash;">find / -name "*mysql*" -exec rm -rf {} \;</pre></div>
<p class="maodian"></p><h3>5、检查并安装依赖库</h3>
<p>查看是否安装了 MySQL 依赖库 libaio,如果没有安装则进行安装:</p>
<div class="dxycode"><pre class="brush:bash;">yum list installed |grep libaio</pre></div>
<p>若未安装,执行以下命令安装:</p>
<div class="dxycode"><pre class="brush:bash;">yum -yinstall libaio</pre></div>
<p class="maodian"></p><h3>6、 解压 MySQL 压缩包并更名</h3>
<p>解压 MySQL 压缩包:</p>
<div class="dxycode"><pre class="brush:bash;">tar xvJf mysql-8.0.42-linux-glibc2.17-x86_64.tar.xz</pre></div>
<p>附注:<code>tar</code> 命令参数解释:</p>
<p><code>-x</code>:解开已有的归档文件 <code>-v</code>:显示详细的过程 <code>-J</code>:使用 <code>xz</code> 压缩或解压归档文件 <code>-f</code>:指定归档文件名</p>
<p>重命名解压后的文件夹:</p>
<div class="dxycode"><pre class="brush:bash;">mv mysql-8.0.42-linux-glibc2.17-x86_64.tar.xz mysql-8.0.42</pre></div>
<p style="text-align:center"><img alt="" src="https://zhuji.jb51.net/uploads/allimg/20250808/2-250PQARL00.png" /></p>
<p>创建 <code>data</code> 文件夹:</p>
<div class="dxycode"><pre class="brush:bash;">mkdir /data/mysql/data
mkdir /data/mysql/logs</pre></div>
<p class="maodian"></p><h3>7. 创建 mysql 组和用户</h3>
<p>由于MySQL 8出于安全性考虑默认不支持使用 <code>root</code> 用户直接启动 <code>mysqld</code> 服务</p>
<div class="dxycode"><pre class="brush:bash;"># 创建 mysql 组groupadd mysql
# 创建 mysql 用户useradd-g mysql mysql</pre></div>
<p>添加权限:</p>
<div class="dxycode"><pre class="brush:bash;">chmod +x chown-R mysql:mysql -R /opt/module/mysql-8.0.42/ /data/</pre></div>
<p class="maodian"></p><h2>三、设置 MySQL 配置文件 <code>my.cnf</code></h2>
<p>使用 <code>vim</code> 编辑器打开并编辑 <code>/etc/my.cnf</code> 文件:</p>
<div class="dxycode"><pre class="brush:bash;">vim /etc/my.cnf</pre></div>
<p>配置内容如下:</p>
<div class="dxycode"><pre class="brush:bash;"># 设置 MySQL 服务监听端口,默认 3306port=3306# 设置 MySQL 服务器绑定的 IP 地址,可以设置为自己本机 IP
bind-address=0.0.0.0
# 设置 MySQL 数据库用户user=mysql
# 数据库文件路径basedir=/opt/module/mysql-8.0.42
# 数据库数据目录,存储数据库文件的路径datadir=/data/mysql/data
# 设置 MySQL 服务器使用的套接字文件路径socket=/data/mysql/mysql.sock
# datadir=/var/lib/mysql# socket=/var/lib/mysql/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# 设置每个连接的默认字符集character_set_server=utf8mb4
explicit_defaults_for_timestamp=true
lower_case_table_names =1# 配置 MySQL 的自动扩展参数innodb_autoextend_increment=64
log-error=/data/mysql/logs/mysql.log
pid-file=/data/mysql/mysql.pid
# 设置指定存放进程 ID 的文件
log-error=/data/mysql/logs/mysql.log
pid-file=/data/mysql/mysql.pid
# log-error=/var/log/mariadb/mariadb.log# pid-file=/var/run/mariadb/mariadb.pidsocket=/data/mysql/mysql.sock
## include all files from the config directory## !includedir /etc/my.cnf.d</pre></div>
<p class="maodian"></p><h2>四、Mysql 初始化</h2>
<p>Linux 中的 MySQL 默认是区分表名大小写的,如果你安装的是 MySQL 8,需要在数据库初始化时设置不区分大小写,否则初始化后在配置文件中设置并重启时会报错。</p>
<p>使用 <code>mysql</code> 的 <code>bin</code> 下面的 <code>mysqld</code> 脚本进行初始化:</p>
<div class="dxycode"><pre class="brush:bash;">/opt/module/mysql-8.0.42/bin/mysqld --initialize--user=mysql --basedir=/opt/module/mysql-8.0.42 --datadir=/data/mysql/data</pre></div>
<p>判断是否初始化成功:</p>
<p style="text-align:center"><img alt="" src="https://zhuji.jb51.net/uploads/allimg/20250808/2-250PQARM58.png" /></p>
<p>设置 ssl 安全加密连接</p>
<div class="dxycode"><pre class="brush:bash;"># 进入mysql根目录
./bin/mysql_ssl_rsa_setup --datadir=/data/mysql/data</pre></div>
<p class="maodian"></p><h2>五、启动并登录 MySQL,设置 MySQL 开机自启动</h2>
<p>1、复制 MySQL 自带的 <code>mysql.server</code> 脚本为 <code>mysqld</code> 并放到 <code>/etc/init.d/</code></p>
<div class="dxycode"><pre class="brush:bash;">cp /opt/module/mysql-8.0.42/support-files/mysql.server /etc/init.d/mysqld
# 一下都要执行chmod +x /etc/init.d/mysqld
chkconfig--add mysqld
chkconfig mysqld on
systemctl daemon-reload</pre></div>
<p>这个脚本是 MySQL 官方专门提供的启动脚本,适配各种 init 系统。</p>
<p>注意:<strong>文件名一定要叫 <code>mysqld</code></strong>,systemd 才会识别并包装为 <code>mysqld.service</code></p>
<p>2、启动服务</p>
<div class="dxycode"><pre class="brush:bash;">systemctl start mysqld
# 查看状态
systemctl status mysqld</pre></div>
<p>3、登录 mysql</p>
<div class="dxycode"><pre class="brush:bash;">/opt/module/mysql-8.0.42/bin/mysql -u root -p</pre></div>
<p>密码就是刚刚初始化成功的密码 ,在<code>/data/mysql/logs</code>日志文件中</p>
<p>登录成功后会提示你重置密码,修改密码:</p>
<div class="dxycode"><pre class="brush:sql;">ALTER USER'root'@'%' IDENTIFIED BY '123456';#或允许所有 IP(开发测试可用,生产建议限制 IP)
FLUSH PRIVILEGES; # 刷新 </pre></div>
<p>退出:</p>
<div class="dxycode"><pre class="brush:bash;">quit</pre></div>
<p>重启服务:</p>
<div class="dxycode"><pre class="brush:bash;">systemctl restart mysqld</pre></div>
<p>再次登陆:</p>
<div class="dxycode"><pre class="brush:bash;">/opt/module/mysql-8.0.42/bin/mysql -u root -p</pre></div>
<p>输入刚修改的密码,按回车键。到此,MySQL 已经安装完成…毕业了!!!</p>
<p>以上就是【Linux】Linux安装MySQL详细图文教程的详细内容,更多相关资料请阅读琼殿技术社区其它文章!</p>
頁:
[1]