Ubuntu 安装 Mysql 数据库

首先更新apt-get工具,执行命令如下:

复制代码
apt-get upgrade

安装Mysql,执行如下命令:

复制代码
apt-get install mysql-server

开启Mysql 服务,执行命令如下:

复制代码
service mysql start

并确认是否成功开启mysql,执行命令如下:

复制代码
service mysql status

确认是否启动成功,在LISTEN状态下,启动成功:

复制代码
netstat -tap | grep mysql

在最新使用的 MySQL 版本中,默认使用 auth_socket 插件来进行身份验证,这意味着 root 用户通过操作系统的用户身份进行认证,而不是使用密码。这种配置在许多 Linux 系统上是默认的,特别是在安装 MySQL 时不要求设置密码的情况下。如果我们希望使用传统的密码验证方式来登录 MySQL,需要更改 root 用户的认证方式。以下是如何将 root 用户从 auth_socket 插件更改为使用密码认证的步骤:

登录 MySQL: 首先,使用以下命令登录到 MySQL:

复制代码
sudo mysql

更改认证插件和设置密码 : 在 MySQL 命令行中,使用以下命令来更改 root 用户的认证插件并设置一个新密码:

复制代码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
FLUSH PRIVILEGES;

'新密码' 替换为你想要设置的密码。

退出并测试登录: 更改完成后,退出 MySQL:

复制代码
exit;

然后尝试使用新密码重新登录:

复制代码
sudo mysql -u root -p

系统将提示你输入密码,此时应输入你刚才设置的密码。(不会有任何显示)

MySQL 配置文件中的 bind-address 参数限制了可以接受连接的 IP 地址。需要确认它是否设置为允许从你的客户端 IP 访问。查看 /etc/mysql/mysql.conf.d/mysqld.cnf 文件中的 bind-address:

vim /etc/mysql/mysql.conf.d/mysqld.cnf

如果设置为 127.0.0.1(只允许本地连接),需要改为 0.0.0.0(允许任何 IP 连接)或具体的外部 IP 地址,然后重启 MySQL 服务

执行重启命令:

复制代码
sudo systemctl restart mysql

再次登录Mysql,确保 MySQL 用户的主机设置允许从你的客户端 IP 地址连接。可以在 MySQL 中运行以下 SQL 命令来检查:

接下来,我们需要使用 root 用户或具有相应权限的用户登录到 MySQL。可以通过以下命令登录:

复制代码
mysql -u root -p

登录后,需要选择 mysql 数据库,因为用户信息存储在这个数据库中:

复制代码
USE mysql;

执行以下 SQL 命令来查看所有用户及其主机:

复制代码
SELECT user, host FROM user;

决定修改现有用户(如 root 用户),可以更改用户的 host 值,以允许从任意 IP 地址连接。执行如下命令:

复制代码
UPDATE user SET host = '%' WHERE user = 'root' AND host = 'localhost';
FLUSH PRIVILEGES

这里将 root 用户的 host 从 localhost 改为 %,表示从任何 IP 地址都允许连接。

二、Navicat链接数据库

Windows下载Navicat,地址:Direct Download | Navicat

选择Connection:

新建一个Mysql连接:

输入远程服务器的IP,Mysql的用户名和密码,执行连通性测试。

如何能够正常连接,会提示Connection Successful字样。

接下来就可以正常在Navinate工具中进行Mysql操作了。

相关推荐
百***49005 小时前
Redis-配置文件
数据库·redis·oracle
老纪的技术唠嗑局5 小时前
OceanBase 年度发布会 Hands-on AI Workshop 回顾
数据库
艾体宝IT6 小时前
艾体宝干货 | Redis Python 开发系列#5 高可用与集群部署指南
数据库
d***95626 小时前
docker 安装 mysql
mysql·adb·docker
雨中飘荡的记忆6 小时前
MySQL 优化实战
java·mysql
3***89196 小时前
开放自己本机的mysql允许别人连接
数据库·mysql·adb
X***C8626 小时前
使用bitnamiredis-sentinel部署Redis 哨兵模式
数据库·redis·sentinel
f***01936 小时前
CC++链接数据库(MySQL)超级详细指南
c语言·数据库·c++
q***23576 小时前
MySQL 篇 - Java 连接 MySQL 数据库并实现数据交互
java·数据库·mysql
W***95246 小时前
在Spring Boot项目中使用MySQL数据库
数据库·spring boot·mysql