为什么80%的码农都做不了架构师?>>>   

<p><span>MySQL</span><span>是一种</span>开放源代码<span>的关系型</span>数据库管理<span>系统(RDBMS),<span>虽然功能未必很强大,但因它的免费开源而广受欢迎。</span></span></p> <p><span><span>这次,接着上一篇《</span></span><a id="cb_post_title_url" href="http://www.cnblogs.com/alylee/archive/2013/05/03/LinuxInit_CDevelSetup.html">CentOs minimal安装和开发环境部署</a>》,讲下Linux环境mysql的安装、初始化配置、以及参数优化,中间会穿插在实际操作过程中遇到的新知识扩展。有些是承接上面的知识,如果不太清楚,可以到上一篇去看下。</p> <p>一、安装准备</p> <p>下载得到安装包很简单。</p> <p>1、rpm安装:A、在linux下使用wget获取 B、在虚拟机所在的宿主机windows下,在网络上下载Rpm安装包,然后通过之前我们配置的samba共享目录拷贝到centos下。</p> <p>单独下载要注意你需要的rpm包:</p> <div class="cnblogs_code"> <pre>MySQL-server-<span>5.1</span>.x-<span>0</span>.i386.rpm <span>//</span><span>服务端</span> MySQL-client-<span>5.1</span>.x-<span>0</span>.i386.rpm <span>//</span><span>客户端 </span> MySQL-devel-<span>5.1</span>.x-<span>0</span>.i386.rpm <span>//</span><span>开发包<br />...</span></pre> </div>

<p>2、yum 在线安装:使用CentOs的Yum(如果有特定的Mysql版本需求,要确定你的Yum库里有需要的mysql版本)</p>

<div class="cnblogs_code"> <pre>  Yum (Yellow dog Updater, Modified)是一个基于rpm包管理的字符前端软件包管理器。能够从指定服务器自动下载rpm包并且安装,处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。<br />  简单认识下几个操作:<br />  yum -y install samba  #安装samba,“-y”接受所有,不用手动一个个去确认每一步。<br />  yum remove samba    #卸载samba<br />  yum info installed   #列出系统中<span style="text-decoration: underline">所有安装过的</span>rpm包<br />  yum list samba     #列出资源库中<span style="text-decoration: underline">指定的</span>可以安装或更新以及已经安装的rpm包<br />  yum info samba     #列出资源库中<span style="text-decoration: underline">指定的</span>可以安装或更新以及已经安装的rpm包的信息<br />  yum search samba    #搜索匹配指定字符的rpm包  </pre> </div>

<p>二、安装Mysql</p>

<p>检测当前系统是否已经安装了mysql :运行下面的命令,如果已经安装过,会显示mysql的版本信息。</p>

<div class="cnblogs_code"> <pre>rpm -qa|<span style="color: #0000ff">grep</span> mysql </pre> </div>

<p>如果已经安装过mysql,但是不是自己需要的版本,比如需要高版本的mysql对事件的支持等,怎么办?删除呗!注意,这可能会删除一些相关的依赖库而影响到其他软件,不过可以重新安装。</p>

<div class="cnblogs_code"> <pre><span style="color: #0000ff">yum</span> remove mysql-server mysql-devel mysql-client #删除mysql的server、client、以及devel</pre> </div>

<p>  1、rpm安装:</p>

<div class="cnblogs_code"> <pre>rpm -ivh MySQL-server-<span style="color: #800080">5.1</span>.x-<span style="color: #800080">0</span><span style="color: #000000">.i386.rpm #安装服务端(x:你下载的对应版本号) rpm </span>-ivh MySQL-client-<span style="color: #800080">5.1</span>.x-<span style="color: #800080">0</span><span style="color: #000000">.i386.rpm #安装客户端 rpm </span>-ivh MySQL-devel-<span style="color: #800080">5.1</span>.x-<span style="color: #800080">0</span>.i386.rpm #安装开发包 </pre> </div>

<p>   2、yum安装:</p>

<div class="cnblogs_code"> <pre><span style="color: #0000ff">yum</span> -y <span style="color: #0000ff">install</span> mysql-<span style="color: #000000">server #安装服务器端 </span><span style="color: #0000ff">yum</span> -y <span style="color: #0000ff">install</span> mysql-<span style="color: #000000">client #安装客户端 </span><span style="color: #0000ff">yum</span> -y <span style="color: #0000ff">install</span> mysql-devel #安装开发包</pre> </div>

<p>  这里注意:</p>

<p>A、根据你的开发环境需要,你可以选择对应的rpm包。你可以在命令行,使用&quot;<span style="color: #333300">yum search mysql&quot;搜索与mysql有关的安装包,从中选择你需要的。如果你记不住名字也可以这样搜索下。</span></p>

<div class="cnblogs_code"> <pre><span style="color: #0000ff">yum</span> search mysql</pre> </div>

<p> <span style="color: #333300">  <img alt="" src="http://images.cnitblog.com/blog/313639/201305/04001206-2425cffdf6794cefac832f8ff6186731.jpg" /></span></p>

<p><span style="color: #333300">B、上面列出rpm包名字和简介,还可以通过yum info获取具体rpm包的具体的版本信息</span></p>

<div class="cnblogs_code"> <pre><span style="color: #0000ff">yum</span> <span style="color: #0000ff">info</span> mysql-<span style="color: #000000">server  #列出mysql-server版本信息 </span><span style="color: #0000ff">yum</span> <span style="color: #0000ff">info</span> mysql-<span style="color: #000000">client </span><span style="color: #0000ff">yum</span> <span style="color: #0000ff">info</span> mysql-<span style="color: #000000">devel

#或者 </span><span style="color: #0000ff">yum</span> <span style="color: #0000ff">info</span> mysql* #一个命令一下子列出mysql相关的所有rpm安装包版本信息</pre>

</div>

<p> <span style="color: #333300"> <img alt="" src="http://images.cnitblog.com/blog/313639/201305/04002240-ea4961dda62941679d9ae36e3dcabce1.jpg" /></span></p>

<p> </p>

<p>三、Mysql初始配置</p>

<p>刚刚安装好的mysql需要进行一定的配置,才适合使用。</p>

<p>1、设置Mysql开机启动</p>

<div class="cnblogs_code"> <pre><span style="color: #000000"><span style="color: #ff00ff">chkconfig --list mysql #查看mysql服务开机启动状态</span><br />mysql          0:off1:off2:on3:on4:on5:on6:off<br /></span></pre>

<pre><span style="color: #000000"><span style="color: #ff00ff">#如果2--5都是on,就不需要下面的命令了<br />chkconfig mysql on 设置mysql服务开机启动</span> </span></pre>

</div>

<p>chkconfig,如果不知道是干什么的,那现在来了解下</p>

<div class="cnblogs_code"> <pre><span style="color: #000000"><span style="color: #ff00ff">chkconfig</span>,用来更新(启动或停止)和查询系统服务的运行级信息。 使用语法: chkconfig [</span>--add][--del][--list][系统服务] 或 chkconfig [--level &lt;等级代号&gt;][系统服务][on/off/<span style="color: #000000">reset]</span><span style="color: #000000"> eg: chkconfig </span>--<span style="color: #000000">list [name]:显示所有运行级系统服务的运行状态信息(on或off)。如果指定了name,那么只显示指定的服务在不同运行级的状态。 chkconfig </span>--<span style="color: #000000">add name:增加一项新的服务 chkconfig </span>--del name:删除服务<span style="color: #000000"> chkconfig [</span>--level levels] name:设置某一服务在指定的运行级是被启动,停止还是重置。<br /><br /><br /><span style="color: #ff00ff">level</span>,运行级别,可以用“runlevel”这个命令查询到当前系统的运行级别,也可以“init 0-6”切换运行级别</pre>

<pre><span>0:表示关机 1:单用户模式 2:无网络连接的多用户命令行模式 3:有网络连接的多用户命令行模式 4:不可用 5:带图形界面的多用户模式 6:重新启动 </span></pre>

</div>

<p>2、Mysql服务的启动/关闭/重启</p>

<div class="cnblogs_code"> <pre>service mysql start/shutdown/restart/<span style="color: #000000">status  #启动、关闭、重启、查看服务当前状态 或者 </span>/etc/rc.d/init.d/mysqld start/shutdown/restart/status  #启动、关闭、重启、查看服务当前状态</pre> </div>

<p>3、安全设置</p>

<div class="cnblogs_code"> <pre><span style="color: #000000">⑴、刚安装时,root用户是空的,需要修改密码:   ①mysqladmin </span><span style="color: #808080">-</span>u root password ‘new<span style="color: #808080">-</span><span style="color: #000000">password’   ②或者,登陆后,直接修改用户表里的密码     mysql </span><span style="color: #808080">-</span><span style="color: #000000">u root #用root用户登录     </span><span style="color: #800000; font-weight: bold">1</span>. <span style="color: #0000ff">select</span> <span style="color: #ff00ff">user</span>,host,password <span style="color: #0000ff">from</span> mysql.<span style="color: #ff00ff">user</span><span style="color: #000000">; 查看数据库的用户     </span><span style="color: #800000; font-weight: bold">2</span>. <span style="color: #0000ff">use</span><span style="color: #000000"> mysql #切换到mysql表     </span><span style="color: #0000ff">set</span> password <span style="color: #0000ff">for</span> root<span style="color: #008000">@localhost</span><span style="color: #808080">=</span>password(<span style="color: #ff0000">'</span><span style="color: #ff0000">123456</span><span style="color: #ff0000">'</span><span style="color: #000000">); #设置指定域名下root账号的密码      </span><span style="color: #0000ff">set</span> password <span style="color: #0000ff">for</span> root<span style="color: #008000">@域名</span><span style="color: #808080">=</span>password(<span style="color: #ff0000">'</span><span style="color: #ff0000">123456</span><span style="color: #ff0000">'</span><span style="color: #000000">);     </span><span style="color: #800000; font-weight: bold">3</span><span style="color: #000000">.或者,更常见的sql操作:     </span><span style="color: #0000ff">update</span> <span style="color: #ff00ff">user</span> <span style="color: #0000ff">set</span> password<span style="color: #808080">=</span>password(<span style="color: #ff0000">'</span><span style="color: #ff0000">123456</span><span style="color: #ff0000">'</span>) <span style="color: #0000ff">where</span> <span style="color: #ff00ff">user</span><span style="color: #808080">=</span>‘root<span style="color: #008000">@localhost</span><span style="color: #000000">’;<br /> ⑵、匿名用户是危险的<br />      </span><span style="color: #0000ff">delete</span> <span style="color: #0000ff">from</span> mysql.<span style="color: #ff00ff">user</span> <span style="color: #0000ff">where</span> <span style="color: #ff00ff">user</span><span style="color: #808080">=</span><span style="color: #ff0000">''</span>; #删除匿名用户<br />⑶、退出mysql:  <span style="color: #0000ff">exit</span>;</pre> </div>

<p>4、测试</p>

<p>登陆:</p>

<div class="cnblogs_code"> <pre><span style="color: #ff0000">[</span><span style="color: #ff0000">root@dream ~</span><span style="color: #ff0000">]</span>mysql <span style="color: #808080">-</span><span style="color: #000000">u root #匿名登录,已设置密码或者删除了匿名用户,登陆失败 </span><span style="color: #ff0000">[</span><span style="color: #ff0000">root@dream ~</span><span style="color: #ff0000">]</span>mysql <span style="color: #808080">-</span>u root <span style="color: #808080">-</span><span style="color: #000000">p  #通过密码用root登录 Enter password: #在这里输入密码123456 </span><span style="color: #ff0000">[</span><span style="color: #ff0000">root@dream ~</span><span style="color: #ff0000">]</span>mysql <span style="color: #808080">-</span>u root <span style="color: #808080">-</span>p <span style="color: #800000; font-weight: bold">123456</span>  #显示密码登陆</pre> </div>

<p>sql操作:</p>

<div class="cnblogs_code"> <pre>mysql<span style="color: #808080">&gt;</span> <span style="color: #0000ff">create</span> <span style="color: #0000ff">database</span><span style="color: #000000"> test; #建立名为test的数据库,这个库安装后就有的。 mysql</span><span style="color: #808080">&gt;</span><span style="color: #000000"> show databases; #查看系统已存在的数据库 mysql</span><span style="color: #808080">&gt;</span> <span style="color: #0000ff">use</span><span style="color: #000000"> test  #切换到指定的数据库 mysql</span><span style="color: #808080">&gt;</span> <span style="color: #0000ff">create</span> <span style="color: #0000ff">table</span> tbl_user(ID <span style="color: #0000ff">int</span>, Name <span style="color: #0000ff">varchar</span>(<span style="color: #800000; font-weight: bold">50</span><span style="color: #000000">)); #建立表 mysql</span><span style="color: #808080">&gt;</span><span style="color: #000000"> show tables;  #查看数据库中已存在的表 mysql</span><span style="color: #808080">&gt;</span> <span style="color: #0000ff">drop</span> <span style="color: #0000ff">table</span><span style="color: #000000"> tbl_user; #删除表 mysql</span><span style="color: #808080">&gt;</span><span style="color: #0000ff">drop</span> <span style="color: #0000ff">database</span><span style="color: #000000"> test; #删除名为test数据库 mysql</span><span style="color: #808080">&gt;</span> <span style="color: #0000ff">exit</span> #退出MySQL服务器</pre> </div>

<p> </p>

<p>5、NaviCat远程连接的权限问题</p>

<pre>远程登录会出现如下提示: </pre>

<div class="cnblogs_code"> <pre><span style="color: #800000; font-weight: bold">1103</span> <span style="color: #808080">-</span> host xxx.xxx.xxx.xx <span style="color: #0000ff">is</span> <span style="color: #808080">not</span> allowed <span style="color: #0000ff">to</span> connec <span style="color: #0000ff">to</span><span style="color: #000000"> this mysql server. 或 </span><span style="color: #800000; font-weight: bold">1045</span> <span style="color: #808080">-</span> Access denied <span style="color: #0000ff">for</span> <span style="color: #ff00ff">user</span> <span style="color: #ff0000">'</span><span style="color: #ff0000">root</span><span style="color: #ff0000">'</span>@<span style="color: #ff0000">'</span><span style="color: #ff0000">192.168.1.11</span><span style="color: #ff0000">'</span> (using password: YES).</pre> </div>

<p>解决方案:</p>

<div class="cnblogs_code"> <pre><span style="color: #808080">//</span><span style="color: #000000">mysql访问 </span><span style="color: #0000ff">grant</span> <span style="color: #808080">all</span> <span style="color: #0000ff">privileges</span> <span style="color: #0000ff">on</span> <span style="color: #808080">*</span>.<span style="color: #808080">*</span> <span style="color: #0000ff">to</span> <span style="color: #ff0000">'</span><span style="color: #ff0000">root</span><span style="color: #ff0000">'</span>@<span style="color: #ff0000">'</span><span style="color: #ff0000">%</span><span style="color: #ff0000">'</span> identified <span style="color: #0000ff">by</span> <span style="color: #ff0000">'</span><span style="color: #ff0000">123456</span><span style="color: #ff0000">'</span><span style="color: #000000">;

#其实就是权限问题,设置root在所有域名(</span>%<span style="font-family: 宋体">表示任何地址</span>)登陆时,赋给所有权限,密码123456。根据需要可设置更严格些。</pre>

</div>

<p> </p>

<p>四、数据库和表的导入、导出</p>

<p>1.导出整个的数据库:<span style="color: #ff6600">mysqldump -u 用户名 -p 数据库名 &gt; 导出的文件名</span></p>

<p><span style="color: #ff00ff">mysqldump -u root -p db_test &gt;/home/bak/dbtest.sql</span></p>

<p>2.导出指定数据库中的一个表:<span style="color: #ff6600">mysqldump -u 用户名 -p 数据库名 表名&gt; 导出的文件名</span></p>

<p><span style="color: #ff00ff">mysqldump -u root -p db_test tbl_user &gt;/home/bak/test_user.sql</span></p>

<p>3.只导出一个结构(struct):加上-d参数</p>

<p><span>mysqldump -u root -p -d –add-drop-table db_test &gt;/home/bak/dbtest_struct.sql</span></p>

<p><span>4.只导出一个数据(data):加上-t参数</span></p>

<p><span>mysqldump -u root -p -t –add-drop-table db_test &gt;/home/bak/dbtest_struct.sql</span></p>

<div class="cnblogs_code"> <pre><span style="color: #000000">⑴.只导出表结构 -d   mysqldump </span><span style="color: #808080">-</span>h 192.<span style="color: #800000; font-weight: bold">168.1</span>.<span style="color: #800000; font-weight: bold">11</span> <span style="color: #808080">-</span>u root <span style="color: #808080">-</span>p 123456 <span style="color: #808080">-</span>d –<span style="color: #0000ff">default</span><span style="color: #808080">-</span><span style="color: #0000ff">character</span><span style="color: #808080">-</span><span style="color: #0000ff">set</span><span style="color: #808080">=</span>utf8 test <span style="color: #808080">&gt;</span><span style="color: #000000">sql.sql

⑵.只导出数据 -t   mysqldump </span><span style="color: #808080">-</span>h 192.<span style="color: #800000; font-weight: bold">168.1</span>.<span style="color: #800000; font-weight: bold">11</span> <span style="color: #808080">-</span>u root <span style="color: #808080">-</span>p 123456 <span style="color: #808080">-</span>t –<span style="color: #0000ff">default</span><span style="color: #808080">-</span><span style="color: #0000ff">character</span><span style="color: #808080">-</span><span style="color: #0000ff">set</span><span style="color: #808080">=</span>utf8 test <span style="color: #808080">></span>sql.sql<br /><br />注:①.<span style="color: #ff00ff">-d</span> 没有数据(不导出数据,只导出数据结构和表结构)</pre>

<p>  <span style="color: #ff00ff">-t</span> 不导出结构,只要数据</p>

<p><span style="color: #ff00ff">–add-drop-table</span> 在每个create语句之前增加一个drop table</p>

<p><span style="color: #ff00ff">–default-character-set</span> 设置字符集</p>

<p><span style="color: #ff00ff"><span style="color: #000000">②.</span></span>这里的导出文件没有加路径,就是相对路径,当前的目录下的文件。</p>

<p><span style="color: #ff00ff"><span style="color: #000000">③.</span></span>密码是显示输入的,跟在-p后面。</p> </div>

<p>5.导入数据库:source 命令</p>

<div class="cnblogs_code"> <pre><span style="color: #ff0000">[</span><span style="color: #ff0000">root@dream ~</span><span style="color: #ff0000">]</span> mysql <span style="color: #808080">-</span>u root <span style="color: #808080">-</span><span style="color: #000000">p #登陆 mysql</span><span style="color: #808080">&gt;</span><span style="color: #0000ff">use</span><span style="color: #000000"> test; mysql</span><span style="color: #808080">&gt;</span>source <span style="color: #808080">/</span>home<span style="color: #808080">/</span>bak<span style="color: #808080">/</span>db_test.sql</pre> </div>

<p> </p>

<p><a href="http://my.oschina.net/alylee/blog/187507">欢迎转载,条件允许请注明出处,谢谢</a>! </p>

<p>作者:<a href="http://www.cnblogs.com/alylee/" target="_blank">子韦一</a></p>

转载于:https://my.oschina.net/alylee/blog/187507

linux下Mysql 的安装、配置、数据导入导出相关推荐

  1. (0.2)linux下Mysql的安装配置与管理入门(目录篇)

    本章学习内容: 1.基于Linux平台的Mysql项目场景介绍 1.1.互联网各类网站.购物网站.门户网站.博客系统.IDC,云平台,VPS,虚拟主机空间,论坛,嵌入式. 2.mysql数据库运行环境 ...

  2. linux中mongo的导出数据,Linux下mongodb安装及数据导入导出教程(示例代码)

    Linux下mongodb安装及数据导入导出教程 #查看linux发行版本 cat /etc/issue #查看linux内核版本号 uname -r 一.Linux下mongodb安装的一般步骤 1 ...

  3. Linux下mongodb安装及数据导入导出教程

    Linux下mongodb安装及数据导入导出教程 #查看linux发行版本 cat /etc/issue #查看linux内核版本号 uname -r 一.Linux下mongodb安装的一般步骤 1 ...

  4. linux下mysql(rpm)安装使用手册

    linux下mysql(rpm)安装使用手册 安装Mysql 1.下载MySQL的安装文件 安装MySQL需要下面两个文件: MySQL-server-5.1.7-0.i386.rpm 下载地址为:h ...

  5. Linux下NDK的安装配置

    Linux下NDK的安装配置 在编写android程序的时候如果需要复用一部分以前的c语言程序,可以考虑使用NDK.由于设计到c和c++编程,故强烈建议在Linux下安装上eclipse的CDT插件. ...

  6. Linux下Tomcat的安装配置

    Linux下Tomcat的安装配置 一.下载安装对应的jdk,并配置Java环境. 官网下载地址: http://www.oracle.com/technetwork/java/javase/down ...

  7. linux下pptpd的安装配置(×××)

    linux下pptpd的安装配置(×××)--单网卡×××实现 (本文部分内容摘自互联网,特此声明!)          环境介绍:Linux(redhat) 2.6.18 +PPP+PPTPD    ...

  8. Linux 下编译并安装配置 Qt

    本文介绍的是Linux 下编译并安装配置 Qt,最近准备做 Nokia 的 Symbian,Maemo 下触摸屏开发.考虑到程序的跨平台可移植性,最终选择使用 Qt 开发.相对来说,国内关于 Qt 相 ...

  9. linux qt编译命令,Linux 下编译并安装配置 Qt 全过程

    Linux 下编译并安装配置 Qt 全过程 1.获得源代码 src 官网下载地址:ftp://ftp.qt.nokia.com/qt/source/ 2009 年 10 月 1 日发布的 qt-x11 ...

最新文章

  1. squid在企业网中的应用
  2. yy自动语音接待机器人_智能语音机器人落地产品有哪些?
  3. Visual C++位图操作(1)
  4. (转)淘淘商城系列——商品搜索功能测试
  5. 95-872-040-源码-CEP-CEP简介
  6. mysql中的字符是多长_mysql中的varchar到底能存多长的字符
  7. 马云:用 10% 大脑创造出来的机器不可能毁灭人类
  8. [转载] python:numpy数学函数和逻辑函数
  9. [BZOJ2157]旅游(树链剖分/LCT)
  10. UEditor 实现新增“转换简体”和“转换繁体字”按钮功能
  11. php代码执行函数解析
  12. OptiFDTD应用:纳米盘型谐振腔等离子体波导滤波器
  13. 计算机文件夹加密码怎么设置,如何为文件夹设置密码,教您如何设置
  14. PAT.1143 Lowest Common Ancestor
  15. kafka分布式集群的操作
  16. 自动批量处理人像照片
  17. html5制作坦克大战
  18. 判断两个单向链表是否相交
  19. glassfish任意文件读取漏洞
  20. python爬取boss直聘招聘信息_Python爬虫实战-抓取boss直聘招聘信息

热门文章

  1. 删除数据库中与同步数据冗余的数据(多对多)
  2. git客户端基本操作
  3. haproxy+keepalived应用实战
  4. CSS3蓝色宽屏二级下拉菜单DEMO演示
  5. win7下搭建cocos2d-x androi开发环境不用cygwin的方法
  6. asp.net 获取插入记录的ID
  7. 在DataGrid中添加一个LookUpColumn,以比较灵活地实现DictValue值代替DictID值显示.
  8. 良田高拍仪集成vue项目
  9. 洛谷P2178 品酒大会
  10. VMware 收购 Kubernetes 初创公司 Heptio