小编说话:很多时候,MYSQL没有开启远程连接,那么就只能通过命令的方式进行操作,常运用于服务器数据库维护,这时候此文大派用场。
一:连接MySQL
格式: mysql -h主机地址 -u用户名 -p用户密码
1. mysql –uroot –p123456 连接本机MYSQL
2. mysql –h108.108.108.108 –uroot –p123456 连接远程MYSQL
退出MYSQL环境,exit (回车) 或者 Ctrl+C
二:修改密码
格式1:mysqladmin -u用户名 -p旧密码 password 新密码
假设root用户没有密码,那么我们开始给root添加密码,然后再修改成另外一个密码
mysqladmin -uroot -password 123456 //添加密码
mysqladmin -uroot –p123456 password 666666 //修改密码
格式2:SET PASSWORD FOR 用户名@'登录主机' = password('新密码')
SET PASSWORD FOR test2@'localhost'=PASSWORD('123456')
三:增加新用户 && 赋予权限 (根据查询系统数据库mysql中的user表查看情况)
(注意:在MySQL 环境下运行)
格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码"
例1:增加一个用户 test1,并开启远程连接(即允许任何电脑都能访问):
grant select, insert, update, delete,create,drop on *.* to test1@"%" Identified by "123456";
例2:增加一个用户test2,禁止远程连接(只允许localhost登录)。
grant select, insert, update,delete,create,drop on mydb.* to test2@localhost identified by "123456";
例3:增加一个拥有所有权限的localhost的用户
GRANT ALL PRIVILEGES ON mydb.* TO test2@localhost IDENTIFIED BY "123456";
例4:只赋予权限不改密码:
GRANT INDEX ON mydb.* TO test2@localhost
如果你不想test2有密码,可以再打一个命令将密码消掉。
grant select, insert, update, delete,create,drop on mydb.* to test2@localhost identified by "";
注:运行grant后,要进行“flush privileges;”,完成添加用户后要的重新启动mysql服务
四:撤销用户权限
格式:REVOKE 权限 ON *.* FROM '用户名'@'登录主机'
1.REVOKE SELECT ON *.* FROM 'test2'@'localhost'
2.REVOKE ALL PRIVILEGES ON *.* FROM 'test2'@'localhost'
然后flush
五:删除用户 (根据查询系统数据库mysql中的user表查看情况)
格式: DROP USER '用户名'@'登录主机'
如:删除用户localhost下的iauser
DROP USER 'iauser'@'localhost'
六:在MYSQL环境中,常用的命令如下
1. show databases (显示所有数据库)
2. use table_name (进入某数据库)
3. show tables (显示该数据库下的所有表)
4. desc table_name (显示表结构)
5. 至于对表的增删改查,可以网上查找,或者开启MYSQL远程连接,通过工具操作。
五:MySQL导入导出命令
1.导出整个数据库
格式:mysqldump -u 用户名 -p 数据库名 > 导出的文件名
mysqldump -u root -p bbs > bbs.sql
2.导出一个表
格式:mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -u root -p bbs users> bbs_users.sql
3.导入数据库
常用source 命令
进入mysql数据库控制台,
如mysql -u root -p
mysql>use 数据库
然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
mysql>source d:bbs.sql (注:如果写成source d:bs.sql,就会报语法错误)