• Ubuntu上安装和配置MySQL


    1 安装MySQL

    sudo su
    sudo apt update
    sudo apt install mysql-server
    
    • 1
    • 2
    • 3

    安装成功后,mysql-service 应该会自动启动。可以通过执行以下命令来确认。

    sudo service mysql status
    
    • 1

    在这里插入图片描述

    服务未运行时,可执行以下命令:

    sudo /etc/init.d/mysql start
    
    • 1

    验证MySQL-Server

    mysql --version
    
    • 1

    在这里插入图片描述

    2 开机自启

    sudo update-rc.d -f mysql defaults
    
    • 1

    mysql基本命令:

    • 查看mysql运行状态:sudo service mysql status
    • 运行mysql:sudo service mysql start
    • 结束mysql:sudo service mysql stop
    • 取消开机启动:sudo update-rc.d -f mysql remove

    3 保护MySQL-Server

    一般情况下,MySQL Server 包安装完成后,mysql-secure-installation 实用程序将自动启动。但是,如果你没有自动启动,可执行以下命令(全部选 no):

    sudo mysql_secure_installation
    
    • 1

    在这里插入图片描述

    报错(密码策略手残选了 strong!!):
    ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
    
    • 1

    进入mysql

    sudo mysql 
    或者
    mysql -root -p
    
    • 1
    • 2
    • 3

    查看 mysql 初始的密码策略

    SHOW VARIABLES LIKE 'validate_password%';
    
    • 1

    在这里插入图片描述
    如果遇到

    ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

    修改策略,及密码长度

    set global validate_password.policy=0set global validate_password.length=6;
    
    • 1
    • 2

    在这里插入图片描述
    validate_password_policy取值

    0 or LOW     只验证长度
    1 or MEDIUM  验证长度、数字、大小写、特殊字符
    2 or STRONG  验证长度、数字、大小写、特殊字符、字典文件
    
    • 1
    • 2
    • 3

    再次执行修改密码语句

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by '123456789';
    
    • 1

    修复完成,继续:

    sudo mysql_secure_installation
    
    
    • 1
    • 2

    输入刚才的密码即可。

    接下来,会看到一个提示,询问你是否删除所有匿名用户,输入 Y 表示是。

    在这里插入图片描述
    最后注意会提示你是否重新加载权限表格:
    在这里插入图片描述

    4 以root身份登录并调整用户身份验证

    MySQL Server 带有一个客户端实用程序,可以从 Linux 终端访问数据库并与之交互。

    通常,未做任何配置时,在 Ubuntu 上全新安装 MySQL 后,访问服务器的用户将使用 auth_socket 插件进行身份验证。

    auth_socket 的使用会阻止服务器使用密码对用户进行身份验证。它不仅会引发安全问题,而且还会使用户无法借助外部程序(如 phpMyAdmin)访问数据库。因此我们需要将身份验证方法从 auth_socket 更改为使用 mysql_native_password。

    为此需要打开 MySQL 控制台,并在 Linux 终端上运行以下命令。

    mysql -r -p
    
    • 1

    现在,我们需要检查数据库对不同用户使用的身份验证方法。你可以通过运行以下命令来执行此操作。

    SELECT user,authentication_string,plugin,host FROM mysql.user;
    
    • 1

    在这里插入图片描述
    从上图中,我们可以确认 root 用户使用 caching_sha2_password进行了身份验证。
    如果是使用auth_socket 进行身份验证的话,需要使用下面的“ALTER USER”命令切换到密码验证的使用。另外需要注意的是,确保使用较强的安全密码(应超过 8 个字符,结合数字、字符串和特殊符号等),因为它将替换你在执行上述命令“sudo mysql_secure_installation” 时设置的密码。

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_password';
    
    • 1

    重新加载授权表并将更改更新到 MySQL 数据库。通过执行以下命令来执行此操作。

    FLUSH PRIVILEGES;
    
    • 1

    完成后,我们需要确认 root 用户不再使用 auth_socket 进行身份验证。通过再次运行以下命令来执行此操作。

    SELECT user,authentication_string,plugin,host FROM mysql.user;
    
    • 1

    root 身份验证方法将从“auth_socket”更改为“mysql_native_password”或者“caching_sha2_password”

    进入mysql 的方式
    “auth_socket” :sudo mysql
    “caching_sha2_password” : mysql -u root -p 或者 mysql -r -p
    
    • 1
    • 2

    5 创建新用户

    创建一个新用户,并授予该用户适当的权限。我们将创建一个用户 ‘PyDataStudio’ 并分配对所有数据库表的权限以及更改、删除和添加用户权限的权限。逐行执行下面的命令。

    CREATE USER 'PyDataStudio'@'localhost' IDENTIFIED BY 'strong_password';
    
    GRANT ALL PRIVILEGES ON *.* TO 'PyDataStudio'@'localhost' WITH GRANT OPTION;
    
    • 1
    • 2
    • 3

    第一个命令将创建新用户,‘strong_password’ 换成你具体的密码,第二个命令分配所需的权限。

    运行以下命令来测试我们的新用户。

    mysql -u PyDataStudio -p
    
    • 1

    在这里插入图片描述

    6 在Ubuntu服务器上安装MySQL-Server

    在 Ubuntu 服务器上安装 MySQL-server 与上述步骤没有太大区别。但是,由于服务器是远程访问的,我们还需要为服务器启用远程访问。

    要安装数据库并配置安全选项,只需在终端上逐行运行以下命令。

    sudo apt update
    sudo apt install mysql-server
    sudo mysql_secure_installation
    
    • 1
    • 2
    • 3

    安装成功后,需要启用远程访问。从逻辑上讲,我们需要在 Ubuntu 服务器防火墙上打开一个端口,以便 MySQL 数据库进行通信。默认情况下,MySQL 服务在 3306 端口上运行。执行以下命令。

    sudo ufw enable
    sudo ufw allow mysql
    
    • 1
    • 2

    在这里插入图片描述
    为了增强 MySQL 数据库的可靠性和可访问性,可以将 MySQL-server 服务配置为在启动时开始运行。执行以下命令。

    sudo systemctl enable mysql
    
    • 1

    现在需要配置服务器的接口,从而服务器能够侦听远程可访问的接口。我们需要编辑“mysqld.cnf”文件。运行以下命令。

    sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
    
    • 1

    在这里插入图片描述

    默认情况下,绑定地址为“127.0.0.1”。为公网接口添加绑定地址,为服务网络接口添加另一个绑定地址。你可以将所有 IP 地址的绑定地址配置为“0.0.0.0”。
    在这里插入图片描述

  • 相关阅读:
    海博科技助力各地深化“智慧车驾管”模式,一站式利警便民超体验
    Spring JDBC
    您的计算机已被.balckhoues-V-XXXXXXX勒索病毒感染?恢复您的数据的方法在这里!
    面试官猛的一问:Spring的Bean注入如何解决循环依赖的?
    【面试题】http协议
    【云原生】Kubernetes介绍
    三、C++ Builder XE关于intraweb开发_插入IWGrid并美化表格
    软件设计师第4题
    orangepi zero2在linux5.4以上内核使用ili9341
    浅谈Kube-OVN
  • 原文地址:https://blog.csdn.net/weixin_40959890/article/details/126860752