Linux系统MySQL开启远程连接

Mysql为了安全性,在默认情况下用户只允许在本地登录。要开启远程连接,需要做如下操作:

1.远程连接上Linux系统,确保Linux系统已经安装上了MySQL数据库。

登陆数据库。mysql -uroot -p

 

2.创建用户用来远程连接

GRANT ALL PRIVILEGES ON *.* TO 'itoffice'@'%' IDENTIFIED BY 'itoffice' WITH GRANT OPTION;

(第一个itoffice表示用户名,%表示所有的电脑都可以连接,也可以设置某个ip地址运行连接,第二个itoffice表示密码)。

 

如果要授权用户持有数据库特定操作权限:

GRANT select,insert,update,delete ON *.* TO 'itoffice'@'%' IDENTIFIED BY "itoffice";

 

3.执行 flush privileges;命令立即生效

 

4.查询数据库的用户(看到如下内容表示创建新用户成功了)

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

5.查看端口号

show global variables like 'port';  

 

6.删除用户授权,需要使用REVOKE命令

REVOKE privileges ON 数据库[.表名] FROM user-name;

实例:

进行授权操作:
GRANT select,insert,update,delete ON 'test_db' TO 'user'@'%' IDENTIFIED BY 'use123';
再进行删除授权操作:
REVOKE all on test_db from user;
注:该操作只是清除了用户对于test_db的相关授权权限,但是这个user这个用户还是存在。
最后从用户表内清除用户:
DELETE FROM user WHERE user='user';
重载授权表:
FLUSH PRIVILEGES;

7.MYSQL权限详细分类:
全局管理权限:
FILE: 在MySQL服务器上读写文件。
PROCESS: 显示或杀死属于其它用户的服务线程。
RELOAD: 重载访问控制表,刷新日志等。
SHUTDOWN: 关闭MySQL服务。


数据库/数据表/数据列权限:
ALTER: 修改已存在的数据表(例如增加/删除列)和索引。
CREATE: 建立新的数据库或数据表。
DELETE: 删除表的记录。
DROP: 删除数据表或数据库。
INDEX: 建立或删除索引。
INSERT: 增加表的记录。
SELECT: 显示/搜索表的记录。
UPDATE: 修改表中已存在的记录。


特别的权限:
ALL: 允许做任何事(和root一样)。
USAGE: 只允许登录--其它什么也不允许做。

 

http://jingyan.baidu.com/article/363872ec3263236e4ba16f07.html

http://www.linuxidc.com/Linux/2013-06/86459.htm

猜你喜欢

转载自z724130632.iteye.com/blog/2368738
今日推荐