Ubuntu 22.04 MySQL安装并设置远程访问

Ubuntu 22.04 LTS环境下

1 安装

复制代码
# 更新软件包列表
sudo apt update

# 查看可使用的安装包
sudo apt search mysql-server

# 安装最新版本(显示冲突装不了,可以先卸了再装)
sudo apt install -y mysql-server
# 安装指定版本
sudo apt install -y mysql-server-8.0

# # 启动,重启restart,停止stop,状态status,开机启动enable
sudo systemctl start mysql

# 设置root密码(没密码直接回车进)
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';
# 好像下面这句才行
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';

# 记得刷新
flush privileges;

2 创建新用户并允许本地登录

2.1 创建用户

即允许用户从哪个ip连接。查询自己的ip:https://ip138.com/

复制代码
# 进入mysql并use mysql

# 创建用户,如CREATE USER 'rose'@'192.168.38.%' IDENTIFIED BY '123456';
CREATE USER 'usernamexxx'@'hostxxx' IDENTIFIED BY 'passwordxxx';

# 设置密码
SET PASSWORD FOR 'usernamexxx'@'hostxxx' = PASSWORD('newpasswordxxx');

2.2 授权

GRANT privilegesxxx ON databasenamexxx.tablenamexxx TO 'usernamexxx'@'hostxxx'

  • privilegesxxx:用户的操作权限,如SELECT,INSERT,UPDATE等,如果要授予所的权限则使用ALL
  • databasenamexxx:数据库名
  • tablenamexxx:表名,如果要授予该用户对所有数据库和表的相应操作权限则可用表示,如 .*
    如:
GRANT 复制代码
GRANT ALL ON *.* TO 'jack'@'%';
GRANT ALL ON DbXXX.* TO 'jack'@'%';

记得要刷新
flush privileges;

2.3 允许从其他ip连接

修改配置文件

复制代码
# 修改文件
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

# 修改为网卡地址(可能和服务器地址相同)
# 或注释bind-address
bind-address = 0.0.0.0

# 重启
sudo systemctl restart mysql
相关推荐
液态不合群3 小时前
[特殊字符] MySQL 覆盖索引详解
数据库·mysql
盒马coding8 小时前
深度解密MySQL2PG工具MySQL至PostgreSQL语法全景拆解过程
数据库·mysql·postgresql
Nandeska8 小时前
13、MySQL半同步复制示例
数据库·mysql
液态不合群8 小时前
【面试题】MySQL 中 count(*)、count(1) 和 count(字段名) 有什么区别?
android·数据库·mysql
怣509 小时前
MySQL聚合函数在查询中的五大核心应用
数据库·mysql
奔跑的花短裤9 小时前
常见问题及参考链接
ubuntu·常见问题·搜狗输入法·git配置
hai74259 小时前
在 Eclipse 的 JSP 项目中引入 MySQL 驱动
java·mysql·eclipse
千寻技术帮11 小时前
10334_基于Web的文学书刊服务平台
mysql·ssm·源码·代码·文学书刊
乔江seven12 小时前
【python轻量级Web框架 Flask 】2 构建稳健 API:集成 MySQL 参数化查询与 DBUtils 连接池
前端·python·mysql·flask·web
骂我的人都死了12 小时前
DevOps架构部署
运维·ubuntu·docker·k8s·github·devops·python3.11