在Ubuntu 18.04 下安装 MySQL 和 phpMyAdmin

版权声明:转载时请注明来源。 https://blog.csdn.net/RBPicsdn/article/details/85176646

截至文章发表时, Ubuntu 官方源中,最新的 MySQL 版本是 5.7。

安装 MySQL

  1. 更新 apt 包的索引

    $ sudo apt update && sudo apt upgrade
    
  2. 安装 MySQL

    $ sudo apt install mysql-server
    
  3. 安装完成后,MySQL服务将自动启动
    可以用以下命令 检查MySQL服务器是否正在运行

    $ sudo systemctl status mysql
    
  4. MySQL安全初始化
    MySQL服务器包附带一个名为mysql_secure_installation的脚本,可以执行多个与安全相关的操作MySQL服务器包附带一个名为mysql_secure_installation的脚本,可以执行多个与安全相关的操作

    $ sudo mysql_secure_installation
    

安装phpMyAdmin

安装phpMyAdmin

$ sudo apt install phpmyadmin

安装程序将提示您选择应自动配置为运行phpMyAdmin的Web服务器,空格键选择apache2,然后确定
在这里插入图片描述
接下来,将询问您是否使用dbconfig-common设置数据库,选择Yes并点击Enter
在这里插入图片描述
输入phpMyAdmin的密码以注册数据库,选择OK并按Enter
在这里插入图片描述
系统将提示您确认密码,输入相同的密码,OK然后选择并按Enter
在这里插入图片描述

安装过程完成后,重新启动Apache以使更改生效

$ sudo systemctl restart apache2

创建管理MySQL用户
用于登录phpMyAdmin仪表板并在MySQL或MariaDB服务器上执行管理任务。
首先以root用户身份登录MySQL服务器:

$ sudo mysql

在MySQL shell中执行以下命令,这些命令将创建新的管理用户并授予适当的权限:

mysql> CREATE USER 'padmin'@'localhost' IDENTIFIED BY 'super-strong-password';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'padmin'@'localhost' WITH GRANT OPTION;

访问phpMyAdmin
要访问phpMyAdmin界面,打开浏览器并键入服务器的域名或IP地址,然后/phpmyadmin

https://your_domain_or_ip_address/phpmyadmin

输入先前创建的管理用户登录凭据,然后单击Go
在这里插入图片描述

保护phpMyAdmin
要添加额外的安全层,我们将通过设置基本身份验证来密码保护phpMyAdmin目录。

首先,我们将使用Apache软件包附带的工具htpasswd为用户创建一个密码文件。我们将.htpasswd文件存储在/etc/phpmyadmin目录中:

sudo htpasswd -c /etc/phpmyadmin/.htpasswd padmin

在这个例子中,我们创建了一个名为的用户padmin。您可以选择任何用户名,它不必与管理MySQL用户相同。

上面的命令将提示您输入并确认用户的密码。

New password:
Re-type new password:
Adding password for user padmin

如果要添加其他用户,可以使用不带-c标志的相同命令:

sudo htpasswd /etc/phpmyadmin/.htpasswd padmin2

下一步是使用.htpasswd文件,将Apache配置为密码保护phpMyAdmin目录。

为此,请打开phpmyadmin.confphpMyAdmin安装期间自动创建的文件:

sudo nano /etc/apache2/conf-available/phpmyadmin.conf

编辑/插入 以下行:

<Directory /usr/share/phpmyadmin>
    Options  +FollowSymLinks +Multiviews +Indexes  # edit this line # 这里一行
    DirectoryIndex index.php

    AllowOverride None # 这里一行
    AuthType basic # 这里一行
    AuthName "Authentication Required" # 这里一行
    AuthUserFile /etc/phpmyadmin/.htpasswd # 这里一行
    Require valid-user # 这里一行

    <IfModule mod_php5.c>
    ...

保存并关闭该文件并重新启动Apache以使更改生效:

sudo systemctl restart apache2

现在,当访问您的phpMyAdmin时,系统将提示您输入之前创建的用户的登录凭据:

https://your_domain_or_ip_address/phpmyadmin

在这里插入图片描述
进入基本身份验证后,您将进入phpMyAdmin登录页面,您需要输入MySQL管理用户登录凭据。

/phpmyadmin目录重命名 为更独特和安全的也 是一个好主意。

使用 MySQL

更改身份验证方法

在Ubuntu系统中运行MySQL 5.7(或者更高版本的),
root用户默认由auth_socket插件进行身份验证。

auth_socket插件,是从localhost中通过Unix socket文件对连接的用户进行身份验证。

以root用户类型登录MySQL服务器

$ sudo mysql

将身份验证方法从auth_socket更改为mysql_native_password,同时更改root密码

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'very_strong_password';
mysql> FLUSH PRIVILEGES;

创建一个可以访问所有数据库的新管理用户

mysql> GRANT ALL PRIVILEGES ON *.* TO 'administrator'@'localhost' IDENTIFIED BY 'very_strong_password';

创建一个新的MySQL用户帐户

mysql> CREATE USER 'database_user'@'localhost' IDENTIFIED BY 'user_password';

如果要授予其他主机的访问权限,只需更改localhost远程计算机IP或使用%通配符作为主机部分,这意味着用户帐户将能够从任何主机进行连接。

更改MySQL用户帐户密码

更改MySQL或MariaDB用户帐户密码的语法取决于您在系统上运行的服务器版本。

您可以通过发出以下命令找到您的服务器版本:

mysql> mysql --version

如果你有MySQL 5.7.6及更新版或MariaDB 10.1.20及更新版,要更改密码,请使用以下命令:

mysql> ALTER USER 'database_user'@'localhost' IDENTIFIED BY 'new_password';

如果你有MySQL 5.7.5及更早版本或MariaDB 10.1.20及更早版本,那么使用:

mysql> SET PASSWORD FOR 'database_user'@'localhost' = PASSWORD('new_password');

列出所有MySQL用户帐户

我们可以通过查询mysql.users表列出所有MySQL或MariaDB用户帐户:

mysql> SELECT user, host FROM mysql.user;

删除MySQL用户帐户

要删除用户帐户,请使用以下命令:

mysql> DROP USER 'database_user@'localhost';

猜你喜欢

转载自blog.csdn.net/RBPicsdn/article/details/85176646
今日推荐