前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >linux下mysql配置用户远程访问和开启binlog

linux下mysql配置用户远程访问和开启binlog

作者头像
Kiba518
发布2024-02-29 09:09:00
4720
发布2024-02-29 09:09:00
举报
文章被收录于专栏:Kiba518

mysql在windows下配置root用户远程访问

1,管理员打开CMD

2,cd到mysql的bin

代码语言:javascript
复制
 cd C:\Program Files\MySQL\MySQL Server 8.0\bin

3,登录mysql

代码语言:javascript
复制
mysql -u root -p

4,执行sql查看当前用户

代码语言:javascript
复制
use mysql;
select User,authentication_string,Host from user;

5,修改root用户远程访问

代码语言:javascript
复制
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';  # IDENTIFIED WITH mysql_native_password:表示指定该用户使用 MySQL 原生密码验证方式。后面的123456是要设置的新密码。
代码语言:javascript
复制
update user set host='%' where user='root';

6,再次查看用户

代码语言:javascript
复制
use mysql;
select User,authentication_string,Host from user;

7,更改root权限

代码语言:javascript
复制
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'  WITH GRANT OPTION;

8,也可以创建可远程访问的用户

代码语言:javascript
复制
CREATE USER 'remote_user'@'%' IDENTIFIED BY '123456';
GRANT ALL ON *.* TO 'remote_user'@'%';

9,通过GRANT命令赋权后,需要通过FLUSH PRIVILEGES刷新权限表使修改生效:

代码语言:javascript
复制
flush privileges;

linux下也是这个流程,注意linux系统用户要用root登录,如果提示You are not allowed to create a user with GRANT,就只能退出,在重试几次。

linux下要关闭防火墙。

代码语言:javascript
复制
systemctl stop firewalld
systemctl disable firewalld

然后配置mysql的配置文件,在配置文件my.cnf或者mysql.cnf里找到[mysqld]模块,如果没有就去他包含的文件里找

代码语言:javascript
复制
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/

上面代码包含了两个文件夹,在mysql.conf.d/mysqld.cnf里找到了[mysqld]

然后设置/etc/mysql/mysql.conf.d/mysqld.cnf文件如下,在[mysqld]下设置

代码语言:javascript
复制
bind-address = 10.1.0.141
mysqlx-bind-address = 10.1.0.141

然后就可以使用我们创建的用户,或者root访问了。

PS:关闭Ubuntu防火墙的步骤如下:

代码语言:javascript
复制
打开终端:在Ubuntu中,按下“Ctrl+Alt+T”键即可打开终端。
输入以下命令以停止防火墙服务:sudo systemctl stop ufw.service。
输入以下命令以禁用防火墙服务:sudo systemctl disable ufw.service。
最后,输入以下命令以确认防火墙服务已关闭:sudo ufw status。如果终端输出“Status: inactive”,则表示防火墙已成功关闭。
ufw allow 21放行端口。

mysql开启binlog

在Linux下,你可以按照以下步骤来开启MySQL的二进制日志(binlog):

打开MySQL配置文件:

如果你使用的是MySQL 5.6或更早版本,配置文件通常位于/etc/my.cnf。 对于MySQL 5.7及更高版本,配置文件通常位于/etc/mysql/my.cnf/etc/my.cnf。使用文本编辑器(如vi、nano等)打开该文件。

[mysqld]部分下添加以下行来启用二进制日志:

代码语言:javascript
复制
[mysqld]  
...  
log-bin=mysql-bin

保存并关闭配置文件。

重启MySQL服务器以使更改生效:

代码语言:javascript
复制
[mysqld]  
...  
log-bin=mysql-bin

代码语言:javascript
复制
sudo /etc/init.d/mysql restart

接下来,你可以通过以下步骤来检查二进制日志是否成功启用:

1.连接到MySQL服务器:

代码语言:javascript
复制
mysql -u root -p

输入MySQL root用户的密码。 2. 执行以下命令来查看当前的二进制日志文件和位置:

代码语言:javascript
复制
SHOW MASTER STATUS;

如果二进制日志已成功启用,该命令将返回有关当前二进制日志文件和位置的信息。否则,将不会有任何输出或返回一个错误。 3. 检查返回的结果。如果返回了当前的二进制日志文件名和位置,则表示二进制日志已成功启用。你还可以检查返回结果中的其他信息,例如二进制日志格式(ROW或MIXED)以及二进制日志缓存大小(binlog_cache_size)。

4.(可选)为了验证二进制日志是否在记录更改,你可以创建一个测试表并插入一些数据。然后,使用SHOW BINARY LOGS;命令查看是否有新的二进制日志文件生成。

执行以下命令查看当前的二进制日志文件路径:

代码语言:javascript
复制
SHOW VARIABLES LIKE 'log_bin_basename';
SHOW VARIABLES LIKE 'log_bin' 
SHOW BINARY LOGS

开启成功后

binlog会存储在/var/lib/mysql中

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-02-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • mysql在windows下配置root用户远程访问
  • mysql开启binlog
相关产品与服务
云数据库 MySQL
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档