Centos7 mysql数据库安装及配置实现教程
<p><strong>一、系统环境</strong></p>
<p>
yum update升级以后的系统版本为</p>
<blockquote>
<p>
# cat /etc/redhat-release<br>
CentOS Linux release 7.1.1503 (Core)</p>
</blockquote>
<p>
<strong>二、mysql安装</strong></p>
<p>
一般网上给出的资料都是</p>
<blockquote>
<p>
#yum install mysql<br>
#yum install mysql-server<br>
#yum install mysql-devel</p>
</blockquote>
<p>
安装mysql和mysql-devel都成功,但是安装mysql-server失败,如下:</p>
<p>
</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterplain" id="highlighter_359255">
<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>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="plain plain"># yum install mysql-server</code>
</div>
<div class="line number2 index1 alt1">
<code class="plain plain">Loaded plugins: fastestmirror</code>
</div>
<div class="line number3 index2 alt2">
<code class="plain plain">Loading mirror speeds from cached hostfile</code>
</div>
<div class="line number4 index3 alt1">
<code class="plain spaces"> </code><code class="plain plain">* base: mirrors.sina.cn</code>
</div>
<div class="line number5 index4 alt2">
<code class="plain spaces"> </code><code class="plain plain">* extras: mirrors.sina.cn</code>
</div>
<div class="line number6 index5 alt1">
<code class="plain spaces"> </code><code class="plain plain">* updates: mirrors.sina.cn</code>
</div>
<div class="line number7 index6 alt2">
<code class="plain plain">No package mysql-server available.</code>
</div>
<div class="line number8 index7 alt1">
<code class="plain plain">Error: Nothing to do</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
查资料发现是CentOS 7 版本将MySQL数据库软件从默认的程序列表中移除,用mariadb代替了。</p>
<p>
有两种解决办法:</p>
<p>
1、方法一:安装mariadb</p>
<p>
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。</p>
<p>
安装mariadb,大小59 M。</p>
<p>
# yum install mariadb-server mariadb</p>
<p>
mariadb数据库的相关命令是:</p>
<blockquote>
<p>
systemctl start mariadb #启动MariaDB</p>
<p>
systemctl stop mariadb #停止MariaDB</p>
<p>
systemctl restart mariadb #重启MariaDB</p>
<p>
systemctl enable mariadb #设置开机启动</p>
</blockquote>
<p>
所以先启动数据库</p>
<p>
# systemctl start mariadb</p>
<p>
然后就可以正常使用mysql了</p>
<p>
</p>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_622502">
<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>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
<div class="line number17 index16 alt2">
17</div>
<div class="line number18 index17 alt1">
18</div>
<div class="line number19 index18 alt2">
19</div>
<div class="line number20 index19 alt1">
20</div>
<div class="line number21 index20 alt2">
21</div>
<div class="line number22 index21 alt1">
22</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain"># mysql -u root -p</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain">Enter </code><code class="sql keyword">password</code><code class="sql plain">: </code>
</div>
<div class="line number3 index2 alt2">
<code class="sql plain">Welcome </code><code class="sql keyword">to</code> <code class="sql plain">the MariaDB monitor. Commands </code><code class="sql keyword">end</code> <code class="sql keyword">with</code> <code class="sql plain">; </code><code class="sql color1">or</code> <code class="sql plain">\g.</code>
</div>
<div class="line number4 index3 alt1">
<code class="sql plain">Your MariaDB </code><code class="sql keyword">connection</code> <code class="sql plain">id </code><code class="sql keyword">is</code> <code class="sql plain">3</code>
</div>
<div class="line number5 index4 alt2">
<code class="sql plain">Server version: 5.5.41-MariaDB MariaDB Server</code>
</div>
<div class="line number6 index5 alt1">
</div>
<div class="line number7 index6 alt2">
<code class="sql plain">Copyright (c) 2000, 2014, Oracle, MariaDB Corporation Ab </code><code class="sql color1">and</code> <code class="sql plain">others.</code>
</div>
<div class="line number8 index7 alt1">
</div>
<div class="line number9 index8 alt2">
<code class="sql plain">Type </code><code class="sql string">'help;'</code> <code class="sql color1">or</code> <code class="sql string">'\h'</code> <code class="sql keyword">for</code> <code class="sql plain">help. Type </code><code class="sql string">'\c'</code> <code class="sql keyword">to</code> <code class="sql plain">clear the </code><code class="sql keyword">current</code> <code class="sql plain">input statement.</code>
</div>
<div class="line number10 index9 alt1">
</div>
<div class="line number11 index10 alt2">
<code class="sql plain">MariaDB [(none)]> show databases;</code>
</div>
<div class="line number12 index11 alt1">
<code class="sql plain">+</code><code class="sql comments">--------------------+</code>
</div>
<div class="line number13 index12 alt2">
<code class="sql plain">| </code><code class="sql keyword">Database</code> <code class="sql plain">|</code>
</div>
<div class="line number14 index13 alt1">
<code class="sql plain">+</code><code class="sql comments">--------------------+</code>
</div>
<div class="line number15 index14 alt2">
<code class="sql plain">| information_schema |</code>
</div>
<div class="line number16 index15 alt1">
<code class="sql plain">| mysql |</code>
</div>
<div class="line number17 index16 alt2">
<code class="sql plain">| performance_schema |</code>
</div>
<div class="line number18 index17 alt1">
<code class="sql plain">| test |</code>
</div>
<div class="line number19 index18 alt2">
<code class="sql plain">+</code><code class="sql comments">--------------------+</code>
</div>
<div class="line number20 index19 alt1">
<code class="sql plain">4 </code><code class="sql keyword">rows</code> <code class="sql color1">in</code> <code class="sql keyword">set</code> <code class="sql plain">(0.00 sec)</code>
</div>
<div class="line number21 index20 alt2">
</div>
<div class="line number22 index21 alt1">
<code class="sql plain">MariaDB [(none)]></code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
安装mariadb后显示的也是MariaDB [(none)]>,可能看起来有点不习惯。下面是第二种方法。</p>
<p>
2、方法二:官网下载安装mysql-server</p>
<blockquote>
<p>
# wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm<br>
# rpm -ivh mysql-community-release-el7-5.noarch.rpm<br>
# yum install mysql-community-server</p>
</blockquote>
<p>
安装成功后重启mysql服务。</p>
<p>
# service mysqld restart</p>
<p>
初次安装mysql,root账户没有密码。</p>
<p>
</p>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_891070">
<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>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
<div class="line number17 index16 alt2">
17</div>
<div class="line number18 index17 alt1">
18</div>
<div class="line number19 index18 alt2">
19</div>
<div class="line number20 index19 alt1">
20</div>
<div class="line number21 index20 alt2">
21</div>
<div class="line number22 index21 alt1">
22</div>
<div class="line number23 index22 alt2">
23</div>
<div class="line number24 index23 alt1">
24</div>
<div class="line number25 index24 alt2">
25</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain"># mysql -u root </code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain">Welcome </code><code class="sql keyword">to</code> <code class="sql plain">the MySQL monitor. Commands </code><code class="sql keyword">end</code> <code class="sql keyword">with</code> <code class="sql plain">; </code><code class="sql color1">or</code> <code class="sql plain">\g.</code>
</div>
<div class="line number3 index2 alt2">
<code class="sql plain">Your MySQL </code><code class="sql keyword">connection</code> <code class="sql plain">id </code><code class="sql keyword">is</code> <code class="sql plain">3</code>
</div>
<div class="line number4 index3 alt1">
<code class="sql plain">Server version: 5.6.26 MySQL Community Server (GPL)</code>
</div>
<div class="line number5 index4 alt2">
</div>
<div class="line number6 index5 alt1">
<code class="sql plain">Copyright (c) 2000, 2015, Oracle </code><code class="sql color1">and</code><code class="sql plain">/</code><code class="sql color1">or</code> <code class="sql plain">its affiliates. </code><code class="sql color1">All</code> <code class="sql plain">rights reserved.</code>
</div>
<div class="line number7 index6 alt2">
</div>
<div class="line number8 index7 alt1">
<code class="sql plain">Oracle </code><code class="sql keyword">is</code> <code class="sql plain">a registered trademark </code><code class="sql keyword">of</code> <code class="sql plain">Oracle Corporation </code><code class="sql color1">and</code><code class="sql plain">/</code><code class="sql color1">or</code> <code class="sql plain">its</code>
</div>
<div class="line number9 index8 alt2">
<code class="sql plain">affiliates. Other names may be trademarks </code><code class="sql keyword">of</code> <code class="sql plain">their respective</code>
</div>
<div class="line number10 index9 alt1">
<code class="sql plain">owners.</code>
</div>
<div class="line number11 index10 alt2">
</div>
<div class="line number12 index11 alt1">
<code class="sql plain">Type </code><code class="sql string">'help;'</code> <code class="sql color1">or</code> <code class="sql string">'\h'</code> <code class="sql keyword">for</code> <code class="sql plain">help. Type </code><code class="sql string">'\c'</code> <code class="sql keyword">to</code> <code class="sql plain">clear the </code><code class="sql keyword">current</code> <code class="sql plain">input statement.</code>
</div>
<div class="line number13 index12 alt2">
</div>
<div class="line number14 index13 alt1">
<code class="sql plain">mysql> show databases;</code>
</div>
<div class="line number15 index14 alt2">
<code class="sql plain">+</code><code class="sql comments">--------------------+</code>
</div>
<div class="line number16 index15 alt1">
<code class="sql plain">| </code><code class="sql keyword">Database</code> <code class="sql plain">|</code>
</div>
<div class="line number17 index16 alt2">
<code class="sql plain">+</code><code class="sql comments">--------------------+</code>
</div>
<div class="line number18 index17 alt1">
<code class="sql plain">| information_schema |</code>
</div>
<div class="line number19 index18 alt2">
<code class="sql plain">| mysql |</code>
</div>
<div class="line number20 index19 alt1">
<code class="sql plain">| performance_schema |</code>
</div>
<div class="line number21 index20 alt2">
<code class="sql plain">| test |</code>
</div>
<div class="line number22 index21 alt1">
<code class="sql plain">+</code><code class="sql comments">--------------------+</code>
</div>
<div class="line number23 index22 alt2">
<code class="sql plain">4 </code><code class="sql keyword">rows</code> <code class="sql color1">in</code> <code class="sql keyword">set</code> <code class="sql plain">(0.01 sec)</code>
</div>
<div class="line number24 index23 alt1">
</div>
<div class="line number25 index24 alt2">
<code class="sql plain">mysql></code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
设置密码</p>
<p>
mysql> set password for 'root'@'localhost' =password('password');Query OK, 0 rows affected (0.00 sec)mysql></p>
<p>
不需要重启数据库即可生效。</p>
<p>
在mysql安装过程中如下内容:</p>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_429333">
<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="sql plain">Installed:</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql spaces"> </code><code class="sql plain">mysql-community-client.x86_64 0:5.6.26-2.el7 mysql-community-devel.x86_64 0:5.6.26-2.el7 </code>
</div>
<div class="line number3 index2 alt2">
<code class="sql spaces"> </code><code class="sql plain">mysql-community-libs.x86_64 0:5.6.26-2.el7 mysql-community-server.x86_64 0:5.6.26-2.el7 </code>
</div>
<div class="line number4 index3 alt1">
</div>
<div class="line number5 index4 alt2">
<code class="sql plain">Dependency Installed:</code>
</div>
<div class="line number6 index5 alt1">
<code class="sql spaces"> </code><code class="sql plain">mysql-community-common.x86_64 0:5.6.26-2.el7 </code>
</div>
<div class="line number7 index6 alt2">
</div>
<div class="line number8 index7 alt1">
<code class="sql plain">Replaced:</code>
</div>
<div class="line number9 index8 alt2">
<code class="sql spaces"> </code><code class="sql plain">mariadb.x86_64 1:5.5.41-2.el7_0 mariadb-devel.x86_64 1:5.5.41-2.el7_0 mariadb-libs.x86_64 1:5.5.41-2.el7_0 </code>
</div>
<div class="line number10 index9 alt1">
<code class="sql spaces"> </code><code class="sql plain">mariadb-server.x86_64 1:5.5.41-2.el7_0</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
</p>
<p>
所以安装完以后mariadb自动就被替换了,将不再生效。</p>
<p>
# rpm -qa |grep mariadb#</p>
<p>
<strong>三、配置mysql</strong></p>
<p>
1、编码</p>
<p>
mysql配置文件为/etc/my.cnf</p>
<p>
最后加上编码配置</p>
<p>
default-character-set =utf8</p>
<p>
这里的字符编码必须和/usr/share/mysql/charsets/Index.xml中一致。</p>
<p>
<img style="max-width:100%!important;height:auto!important;"title="Centos7 mysql数据库安装及配置实现教程" alt="Centos7 mysql数据库安装及配置实现教程" src="https://zhuji.jb51.net/uploads/img/202305/f83e528ebb6649799d3986c6750a8003.jpg"></p>
<p>
2、远程连接设置</p>
<p>
把在所有数据库的所有表的所有权限赋值给位于所有IP地址的root用户。</p>
<p>
mysql> grant all privileges on *.* to root@'%'identified by 'password';</p>
<p>
如果是新用户而不是root,则要先新建用户</p>
<p>
mysql>create user 'username'@'%' identified by 'password';</p>
<p>
此时就可以进行远程连接了。</p>
<p>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。</p>
<p>
原文链接:https://www.cnblogs.com/starof/p/4680083.html</p>
頁:
[1]