⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 manual_installing.html

📁 MySQL参考手册中文版
💻 HTML
📖 第 1 页 / 共 5 页
字号:

<p><a NAME="IDX37"></a><a NAME="IDX38"></a>在Linux下的另一个安装方法是使用RPM(RedHat包管理器)分发。见<a HREF="manual_Installing.html#Linux-RPM">4.6.1 Linux RPM 注意事项</a>。 </p>

<p>如果你碰到问题,在把问题邮寄到<a HREF="mailto:mysql@lists.mysql.com">mysql@lists.mysql.com</a>时,<strong>请总是使用</strong><code>mysqlbug</code>,就算问题不是一个bug,<code>mysqlbug</code>收集系统信息,将有助于其它人解决你的问题。不使用<code>mysqlbug</code>,你将减少得到你问题的一个解决方案的可能性!在你解包分发后,你会<tt>在“bin”</tt>目录下找到<code>mysqlbug</code>。见<a HREF="manual_Questions.html#Bug_reports">2.3 怎样报告错误或问题</a>。 </p>

<p>你必须执行以便安装并使用一个<strong>MySQL</strong>二进制分发的基本命令是: 
</p>

<pre>
shell&gt; gunzip &lt; mysql-VERSION-OS.tar.gz |tar  xvf - 
shell&gt; ln - s  mysql-VERSION-OS  mysql 
shell&gt; cd mysql 
shell&gt; scripts/mysql_install_db 
shell&gt; bin/safe_mysqld &amp;

</pre>

<p>如果你安装<code>了DBI</code>和<code>Msql-Mysql-modules</code>Perl模块,你可以使用<code>bin/mysql_setpermission</code>脚本增加新用户。 
</p>

<p>以下是更详细的描述: </p>

<p>对于安装二进制分发,遵循以下步骤,然后继续到<a HREF="manual_Installing.html#Post-installation">4.15 安装后期的设置与测试</a>,进行安装后期的设置和测试: 

<ol>
  <li>挑选一个你想解开分发包的目录,进入给目录。在下面的例子中,我们将分发解包在<tt>“/usr/local”</tt>下并且创建一个安装<strong>MySQL</strong>的<tt>“/usr/local/mysql”</tt>目录。(因此,下列指令假设你有权限在<tt>“/usr/local”</tt>中创建文件,如果该目录被保护,你需要以<code>root</code>实施安装。) 
  </li>
  <li>从<a HREF="manual_Installing.html#Getting_MySQL">4.1 怎样获得MySQL</a>中列出的站点之一获得一个分发文件。<strong>MySQL</strong>二进制分发以压缩的<code>tar</code>文档提供,并且有类似<tt>“mysql-VERSION-OS.tar.gz”</tt>的名字,这里<code>VERSION</code>是一个数字(例如,<code>3.21.15</code>),且<code>OS</code>表明分发能运行的操作系统类型(例如,<code>pc-linux-gnu-i586</code>)。 
  </li>
  <li>解开分发并且创建立安装目录: <pre>
shell&gt; gunzip &lt; mysql-VERSION-OS.tar.gz |tar  xvf - 
shell&gt; ln - s  mysql-VERSION-OS  mysql
</pre>
    <p>第一个命令创建一个名为<tt>“mysql-VERSION-OS”</tt>的目录,第二个命令生成到该目录的一个符号链接。这让你更容易地把安装目录指定为<tt>“/usr/local/mysql”</tt>。 
    </p>
  </li>
  <li>进入安装目录: <pre>
shell&gt; cd  mysql</pre>
    <p>你会在<code>mysql</code>目录下发现几个文件和子目录,对安装目的最重要的是<tt>“bin”</tt>和<tt>“scripts”</tt>子目录。 
    <dl COMPACT="manual_Installing.html#Getting_MySQL">
      <dt><tt>“bin”</tt> </dt>
      <dd><a NAME="IDX39"></a> <a NAME="IDX40"></a>这个目录包含客户程序和服务器,你应该把这个目录的完整路径加到你的<code>PATH</code>环境变量,以便你的shell能正确的找到<strong>MySQL</strong>程序。 
      </dd>
      <dt><tt>“scripts”</tt> </dt>
      <dd>这个目录包含<code>mysql_install_db</code>脚本,用来初始化服务器存取权限。 
      </dd>
    </dl>
  </li>
  <li>如果你想使用<code>mysqlaccess</code>而在某个非标准的地点有<strong>MySQL</strong>分发,你必须改变地点,在哪儿<code>mysqlaccess</code>期望找到<code>mysql</code>客户。编辑<tt>“bin/mysqlaccess”</tt>脚本,大约在第18行,寻找类似下面的行: 
    <pre>$MYSQL = “/usr/local/bin/mysql”; # path to mysql executable</pre>
    <p>改变路径以反映出<code>mysql</code>实际存储在你系统上的地点。如果你不这样做,当你运行<code>mysqlaccess</code>时,你将得到一个<code>broken 
    pipe</code>的错误。</p>
  </li>
  <li>创造<strong>MySQL</strong>授权表(只有在你以前没安装过<strong>MySQL</strong>是必要的): 
    <pre>shell&gt; scripts/mysql_install_db</pre>
    <p>注意当你运行时<code>mysql_install_db</code>时,比版本3.22.10老的<strong>MySQL</strong>版本启动<strong>MySQL</strong>服务器。这不再是真的了! 
    </p>
  </li>
  <li>如果你想要安装对Perl <code>DBI</code>/<code>DBD</code>接口的支持,见<a HREF="manual_Installing.html#Perl_support">4.10 Perl安装注意事项</a>。 </li>
  <li>如果你喜欢在引导机器时自动启动<strong>MySQL</strong>,你可以拷贝<code>support-files/mysql.server</code>文件到你系统有启动文件的地方。更多的信息可以在<code>support-files/mysql.server</code>脚本中和<a HREF="manual_Installing.html#Automatic_start">4.15.3 自动启动和停止MySQL</a>找到。 
  </li>
</ol>

<p>在所有东西被解包并且安装以后,你应该初始化并且测试你的分发。 
</p>

<p>你可以用下列命令启动<strong>MySQL</strong>服务器: </p>

<pre>shell&gt; bin/safe_mysqld &amp;
</pre>

<p>见<a HREF="manual_Installing.html#Post-installation">4.15 
安装后期的设置和测试</a>。 </p>

<p><a NAME="IDX41"></a> <a NAME="IDX42"></a> </p>

<h3><a NAME="Linux-RPM" HREF="manual_toc.html#Linux-RPM">4.6.1 Linux RPM 注意事项</a></h3>

<p>在Linux上安装<strong>MySQL</strong>推荐的方法是使用一个RPM文件。<strong>MySQL</strong> 
RPM目前是在一个 RedHat 5.2 系统上建立的,但是应该能工作在支持<code>rpm</code>且使用<code>glibc</code>的其他 
Linux 版本上。 </p>

<p>如果一个RPM文件有问题,例如<code>Sorry, the host 'xxxx' could not be looked 
up</code>,见<a HREF="manual_Installing.html#Binary_notes-Linux">4.6.3.1 Linux 
注意事项</a>。 </p>

<p>你可能要使用的RPM文件有: 

<ul>
  <li><code>MySQL-VERSION.i386.rpm</code> <strong>MySQL</strong>服务器。除非你只是想要与运行在其他机器上<strong>MySQL</strong>服务器连接,否则你将需要它。 
  </li>
  <li><code>MySQL-client-VERSION.i386.rpm</code> 标准<strong>MySQL</strong>客户程序。你可能总是需要安装这个包。 
  </li>
  <li><code>MySQL-bench-VERSION.i386.rpm</code> 测试和基准程序。需要Perl和msql-mysql-modules 
    RPM。 </li>
  <li><code>MySQL-devel-VERSION.i386.rpm</code> 
    所需的库和包含文件。如果你想要编译其他<strong>MySQL</strong>客户程序, 
    例如Perl模块。 </li>
  <li><code>MySQL-VERSION.src.rpm</code> 
    包含上述所有包的源代码。它也能被用来尝试为其他硬件平台构造RPM(例如,Alpha或SPARC)。 
  </li>
</ul>

<p>查看一个RPM包中的所有文件: </p>

<pre>shell&gt; rpm - qpl  MySQL-VERSION.i386.rpm</pre>

<p>实施一个标准的最小安装,运行这个命令: </p>

<pre>shell&gt; rpm -i MySQL-VERSION.i386.rpm  MySQL-client-VERSION.i386.rpm</pre>

<p>只安装客户包: </p>

<pre>shell&gt; rpm -i MySQL-client-VERSION.i386.rpm</pre>

<p>RPM将数据放在<tt>“/var/lib/mysql”</tt>里,RPM也在<tt>“/etc/rc.d/”</tt>里创建适当的入口以便在引导时自动启动服务器。(这意味着如果你以前已经安装过,在对它改变之前,你可以把你以前安装的<strong>MySQL</strong>启动文件做个拷贝,因此你不会丢失改动)。</p>

<p>在安装了RPM文件后,<tt>“mysqld”</tt>守护程序应该正在运行,并且现在你应该可以开始使用<strong>MySQL</strong>。见<a HREF="manual_Installing.html#Post-installation">4.15 安装后期的设置和测试</a>。 
</p>

<p>如果一些东西出错,可以在二进制的安装一节里找到更多的信息。见<a HREF="manual_Installing.html#Installing_binary">4.6 安装MySQL二进制代码分发</a>。</p>

<p><a NAME="IDX43"></a> <a NAME="IDX44"></a> </p>

<h3><a NAME="Building_clients" HREF="manual_toc.html#Building_clients">4.6.2 
构造客户程序</a></h3>

<p>如果你编译你自己写的或你从第三方获得的<strong>MySQL</strong>客户程序,他们必须用link命令的<code>-lmysqlclient</code>选项进行链接。你可能也需要指定一<code>个 
-L</code> 
选项,告诉链接器在哪儿查找库文件。例如,如果库文件安装在<tt>“/usr/local/mysql/lib”</tt>里,在链接命令上使用<code> 
-L/usr/local/mysql/lib -lmysqlclient</code>。 </p>

<p>对使用<strong>MySQL</strong>头文件的客户程序,当你编译他们时,你可能需要指定一<code>个 
-I</code> 选项(例如,<code>-I/usr/local/mysql/include</code>), 
使得编译器能找到头文件。</p>

<h3><a NAME="Binary_install_system_issues" HREF="manual_toc.html#Binary_install_system_issues">4.6.3 系统特定的问题</a></h3>

<p>下一节说明在从一个二进制分发安装<strong>MySQL</strong>时,已经在特定的系统上观察到已发生过一些问题。 
</p>

<h4><a NAME="Binary_notes-Linux" HREF="manual_toc.html#Binary_notes-Linux">4.6.3.1 Linux 
注意事项</a></h4>

<p><strong>MySQL</strong>需要至少Linux 2.0。 </p>

<p>二进制发行版用<code>-static</code>链接的,这意味着你一般不必担心你拥有的系统库是哪个版本。你也不必安装LinuxThreads。一个用<code>-static</code>链接的程序比一个动态链接程序稍大些但更快(3-5%)。然而,一个问题是你不能使用静态链接的用户定义函数(UDF)。如果你准备编写或使用UDF函数(这只对C或C++程序员),你必须编译<strong>MySQL</strong>本身,使用动态链接。 
</p>

<p>如果你正在使用一<code>个基于libc</code>-的系统(而不是一个<code>glibc2</code>系统),你将可能碰到二进制发行的主机名解析和getpwnam()的一些问题(这是因为<code>glibc</code>不幸地依赖于一些包括解析主机名和getwpent()的外部库,甚至在用<code>-static</code>编译时)。在这种情况下,当你运行<code>mysql_install_db</code>时,你可能得到下列错误信息: 
</p>

<pre>sorry, the host 'xxxx' could not be looked up</pre>

<p>或当你尝试以 <code>--user</code> 选项运行 mysqld 时的下列错误: </p>

<pre>getpwnam : No such fileor directory</pre>

<p>你能用下列方法之一解决这个问题: 

<ul>
  <li>获得一个<strong>MySQL</strong>源代码分发(一个RPM或<code>tar</code>分发)并且安装它。 
  </li>
  <li>执行<code>mysql_install_db --force</code>;这将不执行<code>mysql_install_db</code>里面<code>的resolveip</code>测试。缺点是你不能在授权表中使用主机名字;相反你必须使用IP数字(除了<code>localhost</code>)。如果你正在使用一个老的不支持<code>--force</code>的<strong>MySQL</strong>版本,你必须用编辑器删除<code>mysql_install</code>中的<code>resolveip</code>测试。</li>
  <li>用<code>su</code>启动mysqld而不使用<code>--user</code>。</li>
</ul>

<p><strong>MySQL</strong>的Linux-Intel二进制代码和RPM发行版是为最高可能的速度而配置的。我们总是努力使用可用的最快的稳定的编译器。 
</p>

<p><strong>MySQL</strong>的Perl支持要求Perl 5.004_03或更新。 </p>

<h4><a NAME="Binary_notes-HP-UX" HREF="manual_toc.html#Binary_notes-HP-UX">4.6.3.2 HP-UX 
注意事项</a></h4>

<p>针对HP-UX的<strong>MySQL</strong>二进制分发作为一个HP depot(仓库)或tar 
文件格式分发的。为了使用depot文件,你必须运行至少HP-UX 10.x 
以便访问HP的软件仓库工具。 </p>

<p><strong>MySQL</strong>的HP版本在运行HP-UX 10.20下的HP 9000/8xx 
服务器上编译,并且使用MIT-pthreads。它已知可在这种配置下很好地工作。<strong>MySQL</strong> 
3.22.26和更新版也用HP原生线程包构造。 </p>

<p>其他可以运行的配置: 

<ul>
  <li>运行 HP-UX 10.20 + 的 HP 9000/7xx</li>
  <li>运行 HP-UX 10.30 的 HP 9000/8xx</li>
</ul>

<p>下列配置几乎肯定不能运行: 

<ul>
  <li>运行 HP-UX 10.x 的 HP 9000/7xx 或 8xx ,x &lt; 2 </li>
  <li>运行 HP-UX 9.x 的 HP 9000/7xx 或 8xx</li>
</ul>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -