Debian & Ubuntu 安装配置 mysql 详解
编辑Debian 10 以后的系统默认使用了 MariaDB 数据库,软件源中没有 mysql。所以,要安装 mysql,需要从 mysql 官网下载安装。常用的方式就是通过 apt 资源库进行安装。
本笔记在 Debian 12.7 测试。
一、安装 mysql
1. 添加 MySQL APT 资源库
1) 进入 MySQL APT 版本库的下载页面 https://dev.mysql.com/downloads/repo/apt/。
2)下载最新的 MYSQL APT 资源库配置包(mysql-apt-config_version_all.deb) 。
这里,我下载的是 mysql-apt-config_0.8.33-1_all.deb
3)安装 MYSQL APT 资源库配置包(mysql-apt-config_0.8.33-1_all.deb)
$ sudo dpkg -i mysql-apt-config_0.8.33-1_all.deb
在安装软件包期间,系统会要求你选择要安装的 MySQL 服务器版本,这里我们选择最新的 mysql-8.4-lts 版本。
如果需要修改之前设置的 MySQL 服务器版本,您可以通过使用下面的命令,来重新配置已安装的资源配置包,随时切换到另一个受支持的主要版本系列。
$ sudo dpkg-reconfigure mysql-apt-config
4)更新软件包信息:
$ sudo apt update
注意:一旦在系统上启用了 MySQL APT 资源库,就无法再从平台的本地软件仓库安装任何 MySQL 软件包,直到禁用 MySQL APT 资源库为止。
2. 使用 APT 安装 MySQL
使用以下命令安装 MySQL:
$ sudo apt install mysql-server
这将安装 MySQL 服务器的软件包,以及客户端和数据库公共文件的软件包。期间,系统会要求你为 MySQL 安装的根用户(root)提供一个强密码。
安装完看看我们mysql的版本吧
$ mysql --version
mysql Ver 8.4.3 for Linux on x86_64 (MySQL Community Server - GPL)
3. 体验 mysql 数据库
用数据库链接命令 mysql -u root -p
即可进入数据库,密码输入之前安装时设置的强密码
$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 12
Server version: 8.4.3 MySQL Community Server - GPL
Copyright (c) 2000, 2024, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
输入简单的查询命令来查看数据库系统用户
mysql> select user,host,plugin from mysql.user;
+------------------+-----------+-----------------------+
| user | host | plugin |
+------------------+-----------+-----------------------+
| mysql.infoschema | localhost | caching_sha2_password |
| mysql.session | localhost | caching_sha2_password |
| mysql.sys | localhost | caching_sha2_password |
| root | localhost | caching_sha2_password |
+------------------+-----------+-----------------------+
4 rows in set (0.00 sec)
mysql>
重要事项
请务必记住您设置的根密码。如果用户希望稍后再设置密码,可以在对话框中将密码字段留空,然后按 "确定";在这种情况下,对服务器的根访问将通过使用 Unix 套接字文件进行连接的 Socket Peer-Credential Pluggable Authentication 身份验证。您可以稍后使用 mysql_secure_installation 程序设置 root 密码。
二、允许数据库远程连接
初始安装的数据库,虽然有 root 用户,但并不允许远程连接,当然我们可以给 root 用户设定允许远程连接,但这并不安全,因此,需要新建一个用户并允许远程连接即可。
1. 创建一个用户
mysql>create user 'hollowman'@'%' identified by 'hollowman';
这条语句的作用是在 mysql.user 表中新建了一条用户数据,其中用户名为 hollowman,密码为 hollowman,plugin 默认为caching_sha2_password
,权限基本为 N,也就是否。
mysql> select user,host,plugin from mysql.user;
+------------------+-----------+-----------------------+
| user | host | plugin |
+------------------+-----------+-----------------------+
| hollowman | % | caching_sha2_password |
| mysql.infoschema | localhost | caching_sha2_password |
| mysql.session | localhost | caching_sha2_password |
| mysql.sys | localhost | caching_sha2_password |
| root | localhost | caching_sha2_password |
+------------------+-----------+-----------------------+
5 rows in set (0.00 sec)
2.给用户赋权
因为新建的用户权限基本为否,因此需要给用户赋予权限
mysql> grant all on *.* to 'hollowman'@'%';
all
表示全部权限(insert,update,delete等),*.*
表示任意数据库的任意表格。
三、常用的配置文件
通过 apt 安装的 mysql 服务配置文件本是 /etc/mysql/my.cnf
,不过该文件并未实质配置数据,只是在文件中添加了 2 个包含目录。这两个目录下面的 cnf文件才是真是配置文件,其中:/etc/mysql/conf.d/mysql.cnf
是客户端配置文件,/etc/mysql/mysql.conf.d/mysqld.cnf
是服务端配置文件。
$ sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
[mysqld]
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
datadir = /var/lib/mysql
log-error = /var/log/mysql/error.log
MySQL 8.4 服务端配置文件的这个初始配置,是允许远程链接的。
- 0
- 0
-
分享