mysql远程连接及用户相关命令

一、创建用户并授权

登录root:

root@localhost:~# mysql -u root -p

创建 username (用户) 使用password (密码) 从任何主机连接到mysql服务器:

mysql>GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;

添加一个用户名为db_user,密码为db_pass,授权为% (%表示所有外围IP能连接)对db_name数据库所有权限,命令如下:

mysql> GRANT ALL PRIVILEGES ON db_name.* to db_user@'%' identified by 'db_pass';

创建 username2 () 从ip为192.168.1.1的主机连接到mysql服务器,并使用password作为密码:

mysql>GRANT ALL PRIVILEGES ON *.* TO 'username2'@'192.168.1.1' IDENTIFIED BY 'password' WITH GRANT OPTION;

指定部分权限给用户:

mysql>GRANT select,update on testDB.* to 'test'@'localhost' identified by '1234';

授权test用户拥有所有数据库的某些权限:   

mysql>GRANT select,delete,update,create,drop on *.* to 'test'@'%' identified by "1234";

切记:授权完后,刷新系统权限表:

mysql>FLUSH PRIVILEGES;

二、配置mysql允许远程连接

1、开放3306端口

2、打开iptables 3306端口:

root@localhost:~# iptables -I INPUT 4 -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT

root@localhost:~# iptables-save > /etc/iptables.up.rules  #保存iptables规则

root@localhost:~# iptables -nvL #查看添加的iptables规则

三、远程连接

1、显示密码

如:连接远程mysql(39.105.189.51),端口“3306”,用户名为“username”,密码“123456”

001:~ host$ mysql -h 39.105.189.51 -P 3306 -u username -p123456

2、隐藏密码

001:~ host$ mysql -h 39.105.189.51 -u username -p

Enter password: 

四、其他常用命令

查看MYSQL数据库中所有用户

mysql> SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;

查看数据库中具体某个用户的权限

mysql> show grants for 'username'@'%';

删除用户

mysql>Delete FROM user Where User='test' and Host='localhost';

mysql>flush privileges;

mysql>drop database testDB; //删除用户的数据库

删除账户及权限:

>drop user 用户名@'%';

>drop user 用户名@ localhost; 

修改指定用户密码

    mysql>update mysql.user set password=password('新密码') where User="test" and Host="localhost";

    mysql>flush privileges;

退出mysql:

mysql>exit;

猜你喜欢

转载自blog.csdn.net/voilet_bin/article/details/83990095