远程访问本地mysql

文章目录

连接命令

mysql -h <host> -P <port> -u <user> -p
  • 这是一个用于在命令行中连接到MySQL数据库的命令。
  • -h <host>:指定要连接的MySQL主机名或IP地址。你需要将<host>替换为实际的主机名或IP地址。
  • -P <port>:指定要连接的MySQL服务器的端口号。你需要将<port>替换为实际的端口号。
  • -u <user>:指定要使用的用户名。你需要将<user>替换为实际的用户名。
  • -p:提示输入密码。当你运行命令后,会要求你输入密码。

操作步骤:

  • 设置本地mysql允许外部访问
  • 创建外部访问的mysql用户
  • 配置mysql用户的权限
  • 配置防火墙端口

一、设置本地mysql允许外部访问

找到mysql配置文件my.ini ,linux环境是my.cnf

  • cmd环境输入where mysql,会输出mysql的安装路径。

  • 复制输出的路径,文件管理器打开路径。my.ini就在上面\bin目录的同级目录中。

配置mysql配置文件

  • 修改mysql的配置文件,修改或添加 bind-address属性

    bind-address=0.0.0.0

这将允许MySQL服务器接受来自任何IP地址的远程连接请求。如果你只想允许特定IP地址的连接,可以将 0.0.0.0 替换为相应的IP地址。

二、创建外部访问的mysql用户

要在mysql环境下设置(root登陆mysql):

在MySQL中,每个用户需要有一个用户名和密码,以便进行身份验证。

mysql 复制代码
CREATE USER 'user_name'@'%' IDENTIFIED BY 'password'
  • CREATE USER:表示创建一个新用户。
  • 'user_name'@'%':指定要创建的用户的用户名和允许连接的主机。在这个例子中,'user_name' 是你要创建的用户的名称,'%' 表示允许从任何主机进行连接。你可以将 '%' 替换为特定的主机名或IP地址,以限制连接来源。
  • IDENTIFIED BY 'password':指定用户的密码。在这个例子中,'password' 是你要为用户设置的密码。请确保使用强密码来保护用户账户的安全。

三、配置mysql用户的权限

我们需要使用GRANT语句授予remoteuser用户相应的权限,以便远程访问MySQL数据库。

要在mysql环境下设置(root登陆mysql):

mysql 复制代码
GRANT ALL ON database_name.*  TO 'rem'@'%'
  • GRANT ALL:表示授予用户所有权限,包括 SELECT、INSERT、UPDATE、DELETE、CREATE、DROP 等。
  • ON database_name.*:表示授予权限的数据库和表。在这个例子中,database_name.* 表示授予用户在 database_name 数据库中的所有表上的权限。你可以将 database_name 替换为你想要授权的数据库名,或者使用 *.* 表示所有数据库和表。
  • TO 'rem'@'%':表示将权限授予用户名为 'rem',并允许从任何主机(%)进行连接。你可以将 'rem' 替换为你想要授权的用户名,'%' 替换为特定的主机名或IP地址。

重启mysql

shell 复制代码
net stop mysql && net start mysql

四、配置防火墙端口

  • 查看mysql的使用端口。默认是3306

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BEVjzDi1-1690864269323)(C:\Users\lenovo\AppData\Roaming\Typora\typora-user-images\image-20230801121942973.png)]

五、连接

mysql -h <host> -P <port> -u <user> -p

查看本地ip地址

ipconfig

参考

mysql怎么设置远程访问-mysql教程-PHP中文网

相关推荐
ChinaDragonDreamer2 小时前
Kotlin:2.0.20 的新特性
android·开发语言·kotlin
momo小菜pa4 小时前
【MySQL 06】表的增删查改
数据库·mysql
网络研究院4 小时前
Android 安卓内存安全漏洞数量大幅下降的原因
android·安全·编程·安卓·内存·漏洞·技术
凉亭下4 小时前
android navigation 用法详细使用
android
程序员大金7 小时前
基于SpringBoot+Vue+MySQL的装修公司管理系统
vue.js·spring boot·mysql
小比卡丘7 小时前
C语言进阶版第17课—自定义类型:联合和枚举
android·java·c语言
gorgor在码农7 小时前
Mysql 索引底层数据结构和算法
数据结构·数据库·mysql
-seventy-7 小时前
SQL语句 (MySQL)
sql·mysql
一般路过糸.7 小时前
MySQL数据库——索引
数据库·mysql
前行的小黑炭8 小时前
一篇搞定Android 实现扫码支付:如何对接海外的第三方支付;项目中的真实经验分享;如何高效对接,高效开发
android