MySQL 安装

网友投稿 799 2023-04-09

MySQL 安装

MySQL 安装

本章我们将介绍 MySQL 数据库管理系统的安装,我们将在 Linux 上安装 MySQL。

我们有几种方法可以在系统上安装 MySQL。 我们可以从软件包,二进制文件或源代码中安装 MySQL。

从软件包安装 MySQL

安装 MySQL 的最简单方法是通过软件包系统。

$ sudo apt-get install mysql-server

在 Ubuntu 和其他基于 Debian 的发行版上,我们可以使用apt-get工具轻松地从软件包中安装 MySQL。 此命令将安装 MySQL 服务器和其他各种软件包。 在安装软件包时,提示我们输入 MySQL 根帐户的密码。

$ sudo yum install mysql-server

在 CentOS 上,我们使用上述命令安装 MySQL 服务器。

从源代码安装 MySQL

从源代码安装 MySQL 为我们提供了根据我们的偏好构建 MySQL 的最多选择。 我们可以自定义安装位置,各种构建参数或编译器优化。

安装必要的工具

在开始构建 MySQL 之前,我们需要安装一些先决条件。

$ sudo apt-get install g++

如果不存在,我们必须安装 C++ 编译器。

$ sudo apt-get install libncurses5-dev

我们还需要 Curses 库的开发版本。

$ sudo apt-get install cmake bison$ which cmake bison perl/usr/bin/cmake/usr/bin/bison/usr/bin/perl

另外,我们需要在系统上安装以下三个工具:cmake,bison和perl。 在我们的情况下,我们必须安装cmake工具。 cmake工具已取代configure工具,因为它更便于携带。

安装 Boost

我们需要安装 Boost C++ 库。 MySQL 5.7.17 需要 Boost 1.59.0。

我们下载 Boost 库的源代码。

$  tar xzvf boost_1_59_0.tar.gz $ cd boost_1_59_0/

我们解压缩档案并进入boost_1_59_0目录。

$ ./bootstrap.sh $ sudo ./b2 install

使用这两个命令,我们安装 Boost。

预配置设置

我们创建一个 mysql 组和用户。

$ sudo addgroup --system mysql$ sudo adduser --system mysql --no-create-home -ingroup mysql

我们在计算机上创建一个 mysql 系统组和一个 mysql 系统用户。 Linux 中的每个进程均由特定用户拥有。 MySQL 守护程序将由用户 mysql 拥有。 注意,mysql 不是普通的用户帐户。 它是系统用户。

获取 MySQL 源

确定存档的位置后,可以使用wget工具下载源。

我们已通过deb软件包下载了适用于 64 位体系结构的 Ubuntu Linux 的 MySQL 5.7.17 源。

我们使用md5sum工具验证来源,并将生成的哈希值与网站上的哈希值进行比较。

$ expr 0b966bc6434d8a8020b9c4f32c93a1e7 == 0b966bc6434d8a8020b9c4f32c93a1e71

我们可以使用expr命令快速比较两个哈希。

我们安装deb软件包。 这些文件将安装到/usr/src/mysql目录。

我们创建一个构建目录,更改为该目录,然后将源代码复制到该目录中。

现在我们解压缩源。

$ cd mysql-5.7.17/

我们转到mysql-5.7.17目录,这里有源。

我们显示源目录。

$ cmake -L-- Running cmake version 3.5.1-- Could NOT find Git (missing:  GIT_EXECUTABLE) -- Configuring with MAX_INDEXES = 64U-- SIZEOF_VOIDP 8-- MySQL 5.7.17-- Packaging as: mysql-5.7.17-Linux-x86_64-- Found /usr/local/include/boost/version.hpp -- BOOST_VERSION_NUMBER is #define BOOST_VERSION 105900-- BOOST_INCLUDE_DIR /usr/local/include-- Found Curses: /usr/lib/x86_64-linux-gnu/libcurses.so  -- Looking for tputs in /usr/lib/x86_64-linux-gnu/libcurses.so-- Looking for tputs in /usr/lib/x86_64-linux-gnu/libcurses.so - found-- Performing Test HAVE_DECL_TGOTO-- Performing Test HAVE_DECL_TGOTO - Success...

-L选项显示一些默认的配置选项。 该系统将被安装到/usr/loca/mysql目录。 对我们来说,重要的是要配置 InnoDB 存储引擎

$ cmake .

我们配置构建。 我们保留所有默认设置。 如果我们还希望拥有 MySQL 嵌入式系统,我们将提供-DWITH_EMBEDDED_SERVER=1选项。

$ make$ sudo make install

我们制作系统并安装它。

安装后的设置

在我们的系统上安装 MySQL 之后,需要其他步骤。

$ cd /usr/local/mysql$ sudo chown -R mysql .$ sudo chgrp -R mysql .

我们位于/usr/local/mysql目录中。 我们更改位于上述目录中所有文件的组和所有者。 -R选项表示递归操作。 这意味着这两个命令对所有文件和目录以及目录的内容起作用。

$ ls -ltotal 56drwxr-xr-x  2 mysql mysql  4096 Jan 26 15:54 bin-rw-r--r--  1 mysql mysql 17987 Nov 28 14:32 COPYINGdrwxr-xr-x  2 mysql mysql  4096 Jan 26 15:53 docsdrwxr-xr-x  3 mysql mysql  4096 Jan 26 15:53 includedrwxr-xr-x  4 mysql mysql  4096 Jan 26 15:54 libdrwxr-xr-x  4 mysql mysql  4096 Jan 26 15:53 mandrwxr-xr-x 10 mysql mysql  4096 Jan 26 15:55 mysql-test-rw-r--r--  1 mysql mysql  2478 Nov 28 14:32 READMEdrwxr-xr-x 28 mysql mysql  4096 Jan 26 15:55 sharedrwxr-xr-x  2 mysql mysql  4096 Jan 26 15:55 support-files

我们更改了 MySQL 文件的所有者和组。

$ sudo bin/mysqld --initialize --user=mysql
$ sudo bin/mysql_ssl_rsa_setup

mysql_ssl_rsa_setup工具会创建 SSL 证书和键文件以及 RSA 键对文件,以支持使用 SSL 进行安全连接以及使用 RSA 通过未加密连接进行安全密码交换(如果这些文件丢失)。

$ sudo chown -R root .$ sudo chown -R mysql data

我们将所有文件的所有者更改回用户根目录,但数据目录除外。 mysql 用户拥有的 MySQL 服务器必须有权访问数据目录。 数据库文件存储在此目录中。

启动和停止 MySQL 服务器

以下命令可用于启动和停止 MySQL 服务器。

$ sudo /usr/local/mysql/support-files/mysql.server start

此命令启动 MySQL 服务器。

$ sudo /usr/local/mysql/support-files/mysql.server stop

该命令停止 MySQL 服务器。

其他设定

在系统上安装 MySQL 并更改 root 帐户的密码后,还有一些修改要做。

MySQL 有一个名为my.cnf的配置文件,该文件位于/etc目录中。 通过编辑此文件中的选项,我们可以根据需要配置服务器。

$ sudo cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf$ cp /usr/local/mysql/support-files/my-default.cnf ~/.my.cnf

support-files目录中有配置模板。 在第一个命令中,我们创建 MySQL 全局配置文件。 在第二个示例中,我们在用户的主目录中创建一个个人文件。

$ export PATH=$PATH:/usr/local/mysql/bin/$ export MANPATH=$MANPATH:/usr/local/mysql/man/

另一有用的操作是将 bin 目录添加到PATH变量。 这样,我们可以启动 MySQL 命令和脚本而无需指定完整路径。 另外,我们将 MySQL 工具手册页面的路径和命令添加到MANPATH变量。 现在,我们可以使用 man 命令查看 MySQL 手册页。 将两个命令都放在您的 Shell 配置文件中。 这可以是.bashrc或.profile。

修改 root 密码

以前,我们已经获得了过期的 root 密码。 现在该为根设置新密码了。

$ /usr/local/mysql/bin/mysql -u root -p

我们启动mysql命令行工具。 (服务器必须正在运行。)我们以 root 用户身份连接。

mysql> SET PASSWORD = PASSWORD('newpassowrd');

我们设置了一个新密码。

加固 MySQL

我们可以使用mysql_secure_installation来提高 MySQL 服务器的安全性。

$ /usr/local/mysql/bin/mysql_secure_installation

我们可以选择改进 MySQL 的 root 密码,删除匿名用户帐户,禁用 localhost 外部的 root 登录以及删除测试数据库。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:MySQL 的第一步
下一篇:MySQL 简介
相关文章