CentOS安装mysql5.7
<p>一、环境介绍</p><p>系统版本:CentOS 7.6</p>
<p>数据库版本:mysql-5.7.24</p>
<p>二、环境准备</p>
<p>使用root用户</p>
<p>1、检查是否已经安装过mysql,执行命令</p>
<div class="cnblogs_code">
<pre> rpm <span style="color: rgba(128, 128, 128, 1)">-</span>qa <span style="color: rgba(128, 128, 128, 1)">|</span> grep mysql</pre>
</div>
<p><img src="https://img2020.cnblogs.com/blog/1486162/202007/1486162-20200715144110613-1832564184.png" alt="" loading="lazy"></p>
<p>从执行结果,可以看出我们已经安装了mysql-libs-5.1.73-5.el6_6.x86_64,执行删除命令</p>
<div class="cnblogs_code">
<pre>rpm <span style="color: rgba(128, 128, 128, 1)">-</span>e <span style="color: rgba(0, 128, 128, 1)">--</span><span style="color: rgba(0, 128, 128, 1)">nodeps mysql-libs-5.1.73-5.el6_6.x86_64 </span></pre>
</div>
<p>再次执行查询命令,查看是否删除</p>
<div class="cnblogs_code">
<pre>rpm <span style="color: rgba(128, 128, 128, 1)">-</span>qa <span style="color: rgba(128, 128, 128, 1)">|</span> grep mysql</pre>
</div>
<p>2、查询所有Mysql对应的文件夹</p>
<div class="cnblogs_code">
<pre>whereis mysql</pre>
</div>
<div class="cnblogs_code">
<pre>find <span style="color: rgba(128, 128, 128, 1)">/</span> <span style="color: rgba(128, 128, 128, 1)">-</span>name mysql</pre>
</div>
<p><img src="https://img2020.cnblogs.com/blog/1486162/202007/1486162-20200715145309169-1945223489.png" alt="" width="415" height="173" loading="lazy"></p>
<p>删除相关目录或文件</p>
<div class="cnblogs_code">
<pre>rm <span style="color: rgba(128, 128, 128, 1)">-</span>rf <span style="color: rgba(128, 128, 128, 1)">/</span>usr<span style="color: rgba(128, 128, 128, 1)">/</span>bin<span style="color: rgba(128, 128, 128, 1)">/</span>mysql <span style="color: rgba(128, 128, 128, 1)">/</span>usr<span style="color: rgba(128, 128, 128, 1)">/</span>lib64<span style="color: rgba(128, 128, 128, 1)">/</span>mysql <span style="color: rgba(128, 128, 128, 1)">/</span>usr<span style="color: rgba(128, 128, 128, 1)">/</span>share<span style="color: rgba(128, 128, 128, 1)">/</span>mysql <span style="color: rgba(128, 128, 128, 1)">/</span>etc<span style="color: rgba(128, 128, 128, 1)">/</span>rc.d<span style="color: rgba(128, 128, 128, 1)">/</span>init.d<span style="color: rgba(128, 128, 128, 1)">/</span>mysql <span style="color: rgba(128, 128, 128, 1)">/</span>etc<span style="color: rgba(128, 128, 128, 1)">/</span>selinux<span style="color: rgba(128, 128, 128, 1)">/</span>targeted<span style="color: rgba(128, 128, 128, 1)">/</span>active<span style="color: rgba(128, 128, 128, 1)">/</span>modules<span style="color: rgba(128, 128, 128, 1)">/</span><span style="color: rgba(128, 0, 0, 1); font-weight: bold">100</span><span style="color: rgba(128, 128, 128, 1)">/</span>mysql <span style="color: rgba(128, 128, 128, 1)">/</span>usr<span style="color: rgba(128, 128, 128, 1)">/</span>bin<span style="color: rgba(128, 128, 128, 1)">/</span>mysql <span style="color: rgba(128, 128, 128, 1)">/</span>usr<span style="color: rgba(128, 128, 128, 1)">/</span>lib64<span style="color: rgba(128, 128, 128, 1)">/</span>mysql <span style="color: rgba(128, 128, 128, 1)">/</span>usr<span style="color: rgba(128, 128, 128, 1)">/</span>share<span style="color: rgba(128, 128, 128, 1)">/</span>mysql</pre>
</div>
<p>验证是否删除完毕</p>
<div class="cnblogs_code">
<pre>whereis mysql</pre>
</div>
<div class="cnblogs_code">
<pre>find <span style="color: rgba(128, 128, 128, 1)">/</span> <span style="color: rgba(128, 128, 128, 1)">-</span>name mysql</pre>
</div>
<p>3、检查mysql用户组和用户是否存在,如果没有,则创建(此处使用mysql,也可使用其他任意用户名)</p>
<div class="cnblogs_code">
<pre>cat <span style="color: rgba(128, 128, 128, 1)">/</span>etc<span style="color: rgba(128, 128, 128, 1)">/</span><span style="color: rgba(0, 0, 255, 1)">group</span> <span style="color: rgba(128, 128, 128, 1)">|</span> grep mysql</pre>
</div>
<div class="cnblogs_code">
<pre>cat <span style="color: rgba(128, 128, 128, 1)">/</span>etc<span style="color: rgba(128, 128, 128, 1)">/</span>passwd <span style="color: rgba(128, 128, 128, 1)">|</span>grep mysql</pre>
</div>
<div class="cnblogs_code">
<pre>groupadd mysql</pre>
</div>
<div class="cnblogs_code">
<pre>useradd <span style="color: rgba(128, 128, 128, 1)">-</span>r <span style="color: rgba(128, 128, 128, 1)">-</span>g mysql mysql</pre>
</div>
<p>4、从官网下载是用于Linux的Mysql安装包</p>
<div class="cnblogs_code">
<pre>wget https:<span style="color: rgba(128, 128, 128, 1)">//</span>dev.mysql.com<span style="color: rgba(128, 128, 128, 1)">/</span>get<span style="color: rgba(128, 128, 128, 1)">/</span>Downloads<span style="color: rgba(128, 128, 128, 1)">/</span>MySQL<span style="color: rgba(128, 128, 128, 1)">-</span><span style="color: rgba(128, 0, 0, 1); font-weight: bold">5.7</span><span style="color: rgba(128, 128, 128, 1)">/</span>mysql<span style="color: rgba(128, 128, 128, 1)">-</span><span style="color: rgba(128, 0, 0, 1); font-weight: bold">5.7</span>.<span style="color: rgba(128, 0, 0, 1); font-weight: bold">24</span><span style="color: rgba(128, 128, 128, 1)">-</span>linux<span style="color: rgba(128, 128, 128, 1)">-</span>glibc2.<span style="color: rgba(128, 0, 0, 1); font-weight: bold">12</span><span style="color: rgba(128, 128, 128, 1)">-</span>x86_64.tar.gz</pre>
</div>
<p>三、安装mysql</p>
<p>1、在执行wget命令的目录下或你的上传目录下找到Mysql安装包:mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz</p>
<p>执行解压命令:</p>
<div class="cnblogs_code">
<pre>tar <span style="color: rgba(128, 128, 128, 1)">-</span>zxvf .<span style="color: rgba(128, 128, 128, 1)">/</span>mysql<span style="color: rgba(128, 128, 128, 1)">-</span><span style="color: rgba(128, 0, 0, 1); font-weight: bold">5.7</span>.<span style="color: rgba(128, 0, 0, 1); font-weight: bold">24</span><span style="color: rgba(128, 128, 128, 1)">-</span>linux<span style="color: rgba(128, 128, 128, 1)">-</span>glibc2.<span style="color: rgba(128, 0, 0, 1); font-weight: bold">12</span><span style="color: rgba(128, 128, 128, 1)">-</span>x86_64.tar.gz</pre>
</div>
<p>解压完成后,可以看到当前目录下多了一个解压文件,移动该文件到/usr/local/下,并将文件夹名称修改为mysql</p>
<p>执行命令如下:</p>
<div class="cnblogs_code">
<pre>mv mysql<span style="color: rgba(128, 128, 128, 1)">-</span><span style="color: rgba(128, 0, 0, 1); font-weight: bold">5.7</span>.<span style="color: rgba(128, 0, 0, 1); font-weight: bold">24</span><span style="color: rgba(128, 128, 128, 1)">-</span>linux<span style="color: rgba(128, 128, 128, 1)">-</span>glibc2.<span style="color: rgba(128, 0, 0, 1); font-weight: bold">12</span><span style="color: rgba(128, 128, 128, 1)">-</span>x86_64 <span style="color: rgba(128, 128, 128, 1)">/</span>usr<span style="color: rgba(128, 128, 128, 1)">/</span>local<span style="color: rgba(128, 128, 128, 1)">/</span></pre>
</div>
<div class="cnblogs_code">
<pre>cd <span style="color: rgba(128, 128, 128, 1)">/</span>usr<span style="color: rgba(128, 128, 128, 1)">/</span>local<span style="color: rgba(128, 128, 128, 1)">/</span></pre>
</div>
<div class="cnblogs_code">
<pre>mv mysql<span style="color: rgba(128, 128, 128, 1)">-</span><span style="color: rgba(128, 0, 0, 1); font-weight: bold">5.7</span>.<span style="color: rgba(128, 0, 0, 1); font-weight: bold">24</span><span style="color: rgba(128, 128, 128, 1)">-</span>linux<span style="color: rgba(128, 128, 128, 1)">-</span>glibc2.<span style="color: rgba(128, 0, 0, 1); font-weight: bold">12</span><span style="color: rgba(128, 128, 128, 1)">-</span>x86_64 mysql</pre>
</div>
<p>如果/usr/local/下不存在mysql文件夹,直接执行如下命令,也可达到上述效果</p>
<div class="cnblogs_code">
<pre>mv mysql<span style="color: rgba(128, 128, 128, 1)">-</span><span style="color: rgba(128, 0, 0, 1); font-weight: bold">5.7</span>.<span style="color: rgba(128, 0, 0, 1); font-weight: bold">24</span><span style="color: rgba(128, 128, 128, 1)">-</span>linux<span style="color: rgba(128, 128, 128, 1)">-</span>glibc2.<span style="color: rgba(128, 0, 0, 1); font-weight: bold">12</span><span style="color: rgba(128, 128, 128, 1)">-</span>x86_64 <span style="color: rgba(128, 128, 128, 1)">/</span>usr<span style="color: rgba(128, 128, 128, 1)">/</span>local<span style="color: rgba(128, 128, 128, 1)">/</span>mysql</pre>
</div>
<p>2、在/usr/local/mysql目录下创建data目录</p>
<div class="cnblogs_code">
<pre>mkdir <span style="color: rgba(128, 128, 128, 1)">/</span>usr<span style="color: rgba(128, 128, 128, 1)">/</span>local<span style="color: rgba(128, 128, 128, 1)">/</span>mysql<span style="color: rgba(128, 128, 128, 1)">/</span>data</pre>
</div>
<p>3、更改mysql目录下所有的目录及文件夹所属的用户组和用户,以及权限</p>
<div class="cnblogs_code">
<pre>chown <span style="color: rgba(128, 128, 128, 1)">-</span>R mysql:mysql <span style="color: rgba(128, 128, 128, 1)">/</span>usr<span style="color: rgba(128, 128, 128, 1)">/</span>local<span style="color: rgba(128, 128, 128, 1)">/</span>mysql #此处的mysql为我们上面创建的用户</pre>
</div>
<div class="cnblogs_code">
<pre>chmod <span style="color: rgba(128, 128, 128, 1)">-</span>R <span style="color: rgba(128, 0, 0, 1); font-weight: bold">755</span> <span style="color: rgba(128, 128, 128, 1)">/</span>usr<span style="color: rgba(128, 128, 128, 1)">/</span>local<span style="color: rgba(128, 128, 128, 1)">/</span>mysql</pre>
</div>
<p>4、编译安装并初始化mysql,务必记住初始化输出日志末尾的密码(数据库管理员临时密码)</p>
<div class="cnblogs_code">
<pre>cd <span style="color: rgba(128, 128, 128, 1)">/</span>usr<span style="color: rgba(128, 128, 128, 1)">/</span>local<span style="color: rgba(128, 128, 128, 1)">/</span>mysql<span style="color: rgba(128, 128, 128, 1)">/</span>bin</pre>
</div>
<div class="cnblogs_code">
<pre>.<span style="color: rgba(128, 128, 128, 1)">/</span>mysqld <span style="color: rgba(0, 128, 128, 1)">--</span><span style="color: rgba(0, 128, 128, 1)">initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql</span></pre>
</div>
<p><img src="https://img2020.cnblogs.com/blog/1486162/202007/1486162-20200715175735397-1899496499.png" alt="" loading="lazy"></p>
<p>5、编辑配置文件my.cnf</p>
<div class="cnblogs_code">
<pre>vim /etc/my.cnf</pre>
</div>
<p>添加配置如下(注意:此处的user=mysql为我们上面创建的用户或者root)</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 0, 1)">
#character
character</span>-set-server=<span style="color: rgba(0, 0, 0, 1)">utf8
collation</span>-server=<span style="color: rgba(0, 0, 0, 1)">utf8_general_ci
datadir</span>=/usr/local/mysql/<span style="color: rgba(0, 0, 0, 1)">data
port </span>= <span style="color: rgba(128, 0, 128, 1)">3306</span><span style="color: rgba(0, 0, 0, 1)">
sql_mode</span>=<span style="color: rgba(0, 0, 0, 1)">NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
symbolic</span>-links=<span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">
max_connections</span>=<span style="color: rgba(128, 0, 128, 1)">600</span><span style="color: rgba(0, 0, 0, 1)">
innodb_file_per_table</span>=<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
lower_case_table_names</span>=<span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)">
datadir</span>=/usr/local/mysql/<span style="color: rgba(0, 0, 0, 1)">data
log</span>-error=/usr/local/mysql/data/<span style="color: rgba(0, 0, 0, 1)">error.log
pid</span>-<span style="color: rgba(0, 0, 255, 1)">file</span>=/usr/local/mysql/data/<span style="color: rgba(0, 0, 0, 1)">mysql.pid
user</span>=<span style="color: rgba(0, 0, 0, 1)">mysql
tmpdir</span>=/<span style="color: rgba(0, 0, 0, 1)">tmp
</span>!includedir /etc/my.cnf.d</pre>
</div>
<p> </p>
<p>6、测试启动mysql服务器(<strong>使用my.cnf中配置的user</strong>)</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(128, 128, 128, 1)"><span style="font-family: 宋体, Songti SC; color: rgba(0, 0, 0, 1)">su mysql</span><br>/</span>usr<span style="color: rgba(128, 128, 128, 1)">/</span>local<span style="color: rgba(128, 128, 128, 1)">/</span>mysql<span style="color: rgba(128, 128, 128, 1)">/</span>support<span style="color: rgba(128, 128, 128, 1)">-</span>files<span style="color: rgba(128, 128, 128, 1)">/</span>mysql.server start</pre>
</div>
<p>启动mysql可能会报如下错误:</p>
<p>Starting MySQL. ERROR! The server quit without updating PID file (/usr/local/mysql/data/localhost.localdomain.pid).</p>
<p>解决方法:编辑/etc/init.d/mysql,找到start模块,添加--user=root到mysqld_safe 即可</p>
<div class="cnblogs_code">
<pre>vim /etc/init.d/mysql或者是vim /etc/init.d/mysqld</pre>
</div>
<p><img src="https://img2020.cnblogs.com/blog/1486162/202007/1486162-20200715224627333-1171051413.png" alt="" width="740" height="183" loading="lazy"></p>
<p>7、添加软连接,并重启mysql服务(使用root用户)</p>
<div class="cnblogs_code">
<pre>ln <span style="color: rgba(128, 128, 128, 1)">-</span>s <span style="color: rgba(128, 128, 128, 1)">/</span>usr<span style="color: rgba(128, 128, 128, 1)">/</span>local<span style="color: rgba(128, 128, 128, 1)">/</span>mysql<span style="color: rgba(128, 128, 128, 1)">/</span>support<span style="color: rgba(128, 128, 128, 1)">-</span>files<span style="color: rgba(128, 128, 128, 1)">/</span>mysql.server <span style="color: rgba(128, 128, 128, 1)">/</span>etc<span style="color: rgba(128, 128, 128, 1)">/</span>init.d<span style="color: rgba(128, 128, 128, 1)">/</span>mysql</pre>
</div>
<div class="cnblogs_code">
<pre>ln <span style="color: rgba(128, 128, 128, 1)">-</span>s <span style="color: rgba(128, 128, 128, 1)">/</span>usr<span style="color: rgba(128, 128, 128, 1)">/</span>local<span style="color: rgba(128, 128, 128, 1)">/</span>mysql<span style="color: rgba(128, 128, 128, 1)">/</span>bin<span style="color: rgba(128, 128, 128, 1)">/</span>mysql <span style="color: rgba(128, 128, 128, 1)">/</span>usr<span style="color: rgba(128, 128, 128, 1)">/</span>bin<span style="color: rgba(128, 128, 128, 1)">/</span>mysql</pre>
</div>
<div class="cnblogs_code">
<pre>service mysql restart</pre>
</div>
<p>8、登录mysql,修改密码(密码为步骤4生成的临时密码)</p>
<div class="cnblogs_code">
<pre> mysql <span style="color: rgba(128, 128, 128, 1)">-</span>u root <span style="color: rgba(128, 128, 128, 1)">-</span>p</pre>
</div>
<p>输入步骤4生成的临时密码</p>
<p><img src="https://img2020.cnblogs.com/blog/1486162/202007/1486162-20200715225635383-298360367.png" alt="" width="531" height="242" loading="lazy"></p>
<p>设置密码 </p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)"> set</span> password <span style="color: rgba(0, 0, 255, 1)">for</span> root<span style="color: rgba(0, 128, 0, 1)">@localhost</span> <span style="color: rgba(128, 128, 128, 1)">=</span> password(<span style="color: rgba(255, 0, 0, 1)">'</span><span style="color: rgba(255, 0, 0, 1)">root</span><span style="color: rgba(255, 0, 0, 1)">'</span>);</pre>
</div>
<p><img src="https://img2020.cnblogs.com/blog/1486162/202007/1486162-20200715230332064-1491547998.png" alt="" width="471" height="44" loading="lazy"></p>
<p>9、开放远程连接</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">use</span> mysql;</pre>
</div>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">update</span> <span style="color: rgba(255, 0, 255, 1)">user</span> <span style="color: rgba(0, 0, 255, 1)">set</span> <span style="color: rgba(255, 0, 255, 1)">user</span>.Host<span style="color: rgba(128, 128, 128, 1)">=</span><span style="color: rgba(255, 0, 0, 1)">'</span><span style="color: rgba(255, 0, 0, 1)">%</span><span style="color: rgba(255, 0, 0, 1)">'</span> <span style="color: rgba(0, 0, 255, 1)">where</span> <span style="color: rgba(255, 0, 255, 1)">user</span>.<span style="color: rgba(255, 0, 255, 1)">User</span><span style="color: rgba(128, 128, 128, 1)">=</span><span style="color: rgba(255, 0, 0, 1)">'</span><span style="color: rgba(255, 0, 0, 1)">root</span><span style="color: rgba(255, 0, 0, 1)">'</span>;</pre>
</div>
<div class="cnblogs_code">
<pre>flush <span style="color: rgba(0, 0, 255, 1)">privileges</span>;</pre>
</div>
<div class="cnblogs_code">
<pre>quit</pre>
</div>
<p><img src="https://img2020.cnblogs.com/blog/1486162/202007/1486162-20200715230448644-877673699.png" alt="" width="489" height="210" loading="lazy"></p>
<p>10、设置开机自动启动</p>
<p>将服务文件拷贝到init.d下,并重命名为mysql</p>
<div class="cnblogs_code">
<pre>cp <span style="color: rgba(128, 128, 128, 1)">/</span>usr<span style="color: rgba(128, 128, 128, 1)">/</span>local<span style="color: rgba(128, 128, 128, 1)">/</span>mysql<span style="color: rgba(128, 128, 128, 1)">/</span>support<span style="color: rgba(128, 128, 128, 1)">-</span>files<span style="color: rgba(128, 128, 128, 1)">/</span>mysql.server <span style="color: rgba(128, 128, 128, 1)">/</span>etc<span style="color: rgba(128, 128, 128, 1)">/</span>init.d<span style="color: rgba(128, 128, 128, 1)">/</span>mysqld</pre>
</div>
<p>赋予可执行权限</p>
<div class="cnblogs_code">
<pre>chmod <span style="color: rgba(128, 128, 128, 1)">+</span>x <span style="color: rgba(128, 128, 128, 1)">/</span>etc<span style="color: rgba(128, 128, 128, 1)">/</span>init.d<span style="color: rgba(128, 128, 128, 1)">/</span>mysqld</pre>
</div>
<p>添加服务</p>
<div class="cnblogs_code">
<pre>chkconfig <span style="color: rgba(0, 128, 128, 1)">--</span><span style="color: rgba(0, 128, 128, 1)">add mysqld</span></pre>
</div>
<p>显示服务列表</p>
<div class="cnblogs_code">
<pre>chkconfig <span style="color: rgba(0, 128, 128, 1)">--</span><span style="color: rgba(0, 128, 128, 1)">list</span></pre>
</div>
<p> </p>
<p>至此,CentOS安装mysql5.7完成</p>
<p>注:</p>
<p>查看mysql启动状态:service mysql status或者/usr/local/mysql/support-files/mysql.server status</p>
<p>启动mysql:service mysql start或者/usr/local/mysql/support-files/mysql.server start</p>
<p>停止mysql:service mysql stop或者/usr/local/mysql/support-files/mysql.server stop</p>
<p>参考文章:</p>
<p>1、Linux下安装mysql-5.7.24</p>
<p>2、MySql错误:Starting MySQL...The server quit without updating PID file(服务器学习十一)</p><br><br>
来源:https://www.cnblogs.com/wintercloud/p/13307231.html
頁:
[1]