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操作了。

相关推荐
小白勇闯网安圈3 小时前
Django 响应对象、文件上传与类视图
数据库·django·sqlite
努力的小雨4 小时前
同一份 SQL 跑多套环境:Ksql 变量怎么用才安全
数据库
科技绘图4 小时前
快鲸GEO vs 传统AI搜索优化:全链路自动化与高效内容生产在转化闭环上的对比
数据库·人工智能·自动化
ltl5 小时前
数据库作为 LLM 记忆体:语义缓存、RAG 与一致性
数据库
ltl5 小时前
WAL 与崩溃恢复:ARIES 协议怎么跑通
数据库
ltl5 小时前
TEE 数据库:EnclaveDB、Oblivious 原语与机密 SQL
数据库
麻瓜code6 小时前
【Mysql】重新学一遍 SQL 执行顺序
数据库·sql
这个DBA有点耶7 小时前
数据库一体机架构演进:从硬件堆叠到软硬深度耦合
服务器·网络·数据库·硬件架构·运维开发·database·数据库架构
一只fish7 小时前
优化器架构对比:Oracle vs PostgreSQL vs MySQL
mysql·postgresql·oracle
安_8 小时前
RAG的向量数据库:为LLM提供语义搜索能力
数据库