想做事的青年 發表於 2023-10-6 00:00:00

Linux学习第三篇 Centos7安装mysql5.7.16数据库

<p>
        <strong>前言:</strong>在linux下安装mysql不如windows下面那么简单,但是也不是很难。本文向大家讲解了如何在centos7下如何安装mysql5.7版本,如果有什么问题和错误的地方,欢迎大家指出。</p>
<p>
        <span><strong>版本:</strong></span>mysql-5.7.16-1.el7.x86_64.rpm-bundle.tar</p>
<p>
        <span><strong>注释:</strong></span>在安装前需要确定现在这个系统有没有mysql,如果有那么必须卸载(在centos7自带的是mariadb数据库,所以第一步是卸载数据库)</p>
<p>
        查看mysql数据库:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_67707">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">rpm -qa | </code><code class="bash functions">grep</code> <code class="bash plain">-i mysql</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
        卸载mysql数据库:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_86228">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">rpm -e </code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
        如果有关联文件,不能直接卸载。可以用一下命令强制卸载</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_166921">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">rpm -e --nodeps </code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
         <strong>一、将<span>mysql-5.7.16-1.el7.x86_64.rpm-bundle.tar</span>复制到/home/</strong>(在linux下面安装软件,一般都需要将文件拷贝到home目录下)</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_437625">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash functions">cp</code> <code class="bash plain">mysql-5.7.16-1.el7.x86_64.rpm-bundle.</code><code class="bash functions">tar</code> <code class="bash plain">/home/</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
        <strong>二、解压文件</strong></p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_574546">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash functions">tar</code> <code class="bash plain">-xvf mysql-5.7.16-1.el7.x86_64.rpm-bundle.</code><code class="bash functions">tar</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
        下面是解压出的所有rpm文件</p>
<p>
        <img title="Linux学习第三篇 Centos7安装mysql5.7.16数据库" alt="Linux学习第三篇 Centos7安装mysql5.7.16数据库" src="https://zhuji.jb51.net/uploads/img/202305/b7f264167e0e568162ae14945db1634a.jpg"></p>
<p>
        <strong>三、解压并安装rpm文件</strong></p>
<p>
        1.一般只需要安装下面几个文件</p>
<p>
        <img title="Linux学习第三篇 Centos7安装mysql5.7.16数据库" alt="Linux学习第三篇 Centos7安装mysql5.7.16数据库" src="https://zhuji.jb51.net/uploads/img/202305/adaa827f242dc11abb43e279a16c1473.jpg"></p>
<p>
        2.接下来就用命令一个个的解压rpm文件并安装即可</p>
<p>
        <span><strong>注:</strong></span>这里有一个细节需要大家注意,上面的文件在安装中也是有顺序的,他有对应的优先级。所以你需要按照下面的顺序来一个个的解压安装  </p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterxhtml" id="highlighter_292587">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                        <div class="line number4 index3 alt1">
                                                                4</div>
                                                        <div class="line number5 index4 alt2">
                                                                5</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="xhtml plain">mysql-community-common-5.7.16-1.el7.x86_64</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="xhtml plain">mysql-community-libs-5.7.16-1.el7.x86_64</code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="xhtml plain">mysql-community-client-5.7.16-1.el7.x86_64</code>
</div>
                                                                <div class="line number4 index3 alt1">
                                                                        <code class="xhtml plain">mysql-community-server-5.7.16-1.el7.x86_64</code>
</div>
                                                                <div class="line number5 index4 alt2">
                                                                        <code class="xhtml plain">mysql-community-devel-5.7.16-1.el7.x86_64</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
        <strong>四、安装成功后,开启mysql服务</strong></p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_160814">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">systemctl start mysqld.service</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
        <strong>五、查看3306端口是否开启</strong></p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_960397">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash functions">netstat</code> <code class="bash plain">-</code><code class="bash functions">ln</code> <code class="bash plain">| </code><code class="bash functions">grep</code> <code class="bash plain">3306</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
        <img title="Linux学习第三篇 Centos7安装mysql5.7.16数据库" alt="Linux学习第三篇 Centos7安装mysql5.7.16数据库" src="https://zhuji.jb51.net/uploads/img/202305/5b9760ac30b03744ea7523d1aa707ba6.jpg"></p>
<p>
        <strong> 六、修改my.cnf配置文件</strong></p>
<p>
        1.这一步需要找到my.cnf文件。my.cnf文件的默认路径为/etc/my.cnf</p>
<p>
        2.编辑my.cnf</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_723045">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">vim </code><code class="bash plain">/etc/my</code><code class="bash plain">.cnf</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
        <img title="Linux学习第三篇 Centos7安装mysql5.7.16数据库" alt="Linux学习第三篇 Centos7安装mysql5.7.16数据库" src="https://zhuji.jb51.net/uploads/img/202305/412debc4304f527d71c9d8f44fe82a21.jpg"></p>
<p>
        3.按'i',进入插入模式后,插入以下代码</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_978484">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                        <div class="line number4 index3 alt1">
                                                                4</div>
                                                        <div class="line number5 index4 alt2">
                                                                5</div>
                                                        <div class="line number6 index5 alt1">
                                                                6</div>
                                                        <div class="line number7 index6 alt2">
                                                                7</div>
                                                        <div class="line number8 index7 alt1">
                                                                8</div>
                                                        <div class="line number9 index8 alt2">
                                                                9</div>
                                                        <div class="line number10 index9 alt1">
                                                                10</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain"></code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="bash plain">datadir=</code><code class="bash plain">/var/lib/mysql</code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="bash plain">socket=</code><code class="bash plain">/var/lib/mysql/mysql</code><code class="bash plain">.sock</code>
</div>
                                                                <div class="line number4 index3 alt1">
                                                                        <code class="bash plain">symbolic-links=0</code>
</div>
                                                                <div class="line number5 index4 alt2">
                                                                        <code class="bash plain">log-error=</code><code class="bash plain">/var/log/mysqld</code><code class="bash plain">.log</code>
</div>
                                                                <div class="line number6 index5 alt1">
                                                                        <code class="bash plain">pid-</code><code class="bash functions">file</code><code class="bash plain">=</code><code class="bash plain">/var/run/mysqld/mysqld</code><code class="bash plain">.pid</code>
</div>
                                                                <div class="line number7 index6 alt2">
                                                                        <code class="bash plain">validate_password=off</code>
</div>
                                                                <div class="line number8 index7 alt1">
                                                                        <code class="bash plain">default-storage-engine=innodb</code>
</div>
                                                                <div class="line number9 index8 alt2">
                                                                        <code class="bash plain">character-</code><code class="bash functions">set</code><code class="bash plain">-server=utf8</code>
</div>
                                                                <div class="line number10 index9 alt1">
                                                                        <code class="bash plain">collation-server=utf8_general_ci</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
        <span><strong>注:</strong></span>validate_password=off的意思是关闭密码验证插件(这一句必须加上,因为在修改密码的时候如果不加上会非常的麻烦)。</p>
<p>
        4.保存并退出(按'esc'后,在输入':wq')</p>
<p>
        <img title="Linux学习第三篇 Centos7安装mysql5.7.16数据库" alt="Linux学习第三篇 Centos7安装mysql5.7.16数据库" src="https://zhuji.jb51.net/uploads/img/202305/a37864a67d6b51129bca82f2951cb5c9.jpg"></p>
<p>
        5重启mysql服务</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_863634">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">systemctl restart mysqld.service</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
        <strong>七、到了这一步的尤为的重要了</strong>,前面的每一步都必须仔细的检测,并且要成功的执行才可以。</p>
<p>
        1.初始化表</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_96078">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">/user/sbin/mysqld</code> <code class="bash plain">--initialize --user=mysql </code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
        2.初始化后,会产生一个mysql的零时登录密码,那么在哪里查看呢?前面在my.cnf文件中配置的日志路径是<span>log-error=/var/log/mysqld.log</span>,查看此路径下面的mysqld.log日志,并且找到零时密码</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_741219">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash functions">cat</code> <code class="bash plain">/var/log/mysqld</code><code class="bash plain">.log |</code><code class="bash functions">grep</code> <code class="bash plain">password</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
        3.根据零时密码来重新修改mysql数据库的密码  </p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_275186">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">mysql_secure_installation</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
        4.回车后,他会叫你输入密码,这是你只需要输入零时密码即可。</p>
<p>
         </p>
<p>
        5.输入正确回车后就就输入新密码即可,然后在确认。 </p>
<p>
        <strong> 八、密码修改成功后便可以登录mysql了</strong></p>
<p>
        <img title="Linux学习第三篇 Centos7安装mysql5.7.16数据库" alt="Linux学习第三篇 Centos7安装mysql5.7.16数据库" src="https://zhuji.jb51.net/uploads/img/202305/1eb98120329f3868831e8fad2bd79bef.jpg"></p>
<p>
         以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。</p>
頁: [1]
查看完整版本: Linux学习第三篇 Centos7安装mysql5.7.16数据库