mysql 设置远程登录_mysql 设置远程访问

前置条件

#mysql 已经注册为服务,已经启动

#检查mysql服务状态,如果为disabled 或者未设置为服务需要启动 设置为服务(为了开机启动)并启动它

#检查mysql状态 centos7+systemctl status mysql

# 设置为服务(开机启动)

systemctl enable mysql

# 启动mariadb

systemctl start mysql

使用root 用户连接mysql

如果未设置 root 密码可以使用如下方式登陆

#> mysql

如果已 为mysql root 用户设置了密码,使用如下方式登录

mysql -u root -p

创建用户

1.mysql>CREATE USER 'user1'@'localhost' IDENTIFIED BY 'pass1'; --如果你要创建一个公网可以访问的用户,可以去掉@localhost 或者将localhost该为公网ip2.mysql>GRANT SELECT,INSERT,UPDATE,DELETE ON *.* TO 'user1'@'localhost';ORmysql>GRANT ALL ON *.* TO 'user1'@'localhost';

finally

mysql>FLUSH PRIVILEGES;

收回用户权限

revoke all on *.* fromuser1@localhost;

修改密码

set password for 'root'@'ip_address' = password('xxx');

查看用户访问权限

查询用户表命令:select User,authentication_string,Host,Password from user;

查看某个用户的权限

mysql> show grants for root

权限

说明

CREATE

Create_priv

创建数据库和表

DROP

Drop_priv

抛弃(删除)数据库和表

GRANT OPTION

Grant_priv

数据库、表或保存的程序

REFERENCES

References_priv

未使用

ALTER

Alter_priv

修改表和索引

DELETE

Delete_priv

INDEX

Index_priv

Alter_priv

创建或抛弃索引

INSERT

Insert_priv

向表中插入新行

SELECT

Select_priv

检索表中的记录

UPDATE

Update_priv

修改现存表记录

CREATE VIEW

Create_view_priv

视图

SHOW VIEW

Show_view_priv

视图

ALTER ROUTINE

Alter_routine_priv

保存的程序

CREATE ROUTINE

Create_routine_priv

保存的程序

EXECUTE

Execute_priv

保存的程序

FILE

File_priv

读或写服务器上的文件

CREATE TEMPORARY TABLES

Create_tmp_table_priv

服务器管理

LOCK TABLES

Lock_tables_priv

服务器管理

CREATE USER

Create_user_priv

服务器管理

PROCESS

Process_priv

查看服务器中执行的线程信息或杀死线程

RELOAD

Reload_priv

重载授权表或清空日志、主机缓存或表缓存

REPLICATION CLIENT

Repl_client_priv

服务器管理

REPLICATION SLAVE

Repl_slave_priv

服务器管理

SHOW DATABASES

Show_db_priv

服务器管理

SHUTDOWN

Shutdown_priv

关闭服务器

SUPER

Super_priv

服务器管理

修改密码

mysqladmin -u root password '19740415'

Mysql的端口是否正确

通过netstat -ntlp 查看端口占用情况,一般情况下端口是3306。在用工具连接MySQl是要用到端口。例如My Admin\My Query Browser\MySQl Front等。

检查用户权限是否正确

mysql库的user表里有两条记录:host分别为localhost和%(为了安全,%可以换成你需要外部连接的IP)。

查看/etc/mysql/my.cnf中,skip-networking 是否已被注掉 需要注掉 报错:ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.51.112' (111)

sudo gedit /etc/mysql/my.cnf

#skip-external-locking

#bind-address = 127.0.0.1skip-name-resolve

查看iptables是否停掉,没关的情况下,无法连接

通过:service iptables stop临时关闭。

报错:ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.51.112' (113)

Trouble shooting

如果意外收回了root用户的所有权限

如果你删除了你的root用户错误地可以做一件事:

停止MySQL服务

跑mysqld_safe --skip-grant-tables &

类型mysql -u root -p然后按回车。

输入您的密码

在MySQL命令行中输入:use mysql;

然后执行以下查询:

UPDATE user SET select_priv ='Y', insert_priv='Y' , update_priv='Y', delete_priv= 'Y',

create_priv='Y', grant_priv='Y', lock_tables_priv='Y',

DROP_PRIV='Y',

RELOAD_PRIV='Y',

SHUTDOWN_PRIV='Y',

PROCESS_PRIV='Y',

FILE_PRIV='Y',

REFERENCES_PRIV='Y',

INDEX_PRIV='Y',

ALTER_PRIV='Y',

SHOW_DB_PRIV='Y',

SUPER_PRIV='Y',

CREATE_TMP_TABLE_PRIV='Y',

EXECUTE_PRIV='Y',

REPL_SLAVE_PRIV='Y',

REPL_CLIENT_PRIV='Y',

CREATE_VIEW_PRIV='Y',

SHOW_VIEW_PRIV='Y',

CREATE_ROUTINE_PRIV='Y',

alter_routine_priv='Y',

create_user_priv='Y',

event_priv='Y',

trigger_priv='Y',

create_tablespace_priv='Y'

WHERE host='localhost' AND User = 'root'

然后重新启动mysqld。

reference documents

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值