您的位置:首页 > 数据库 > MySQL

mysql账号增删改、数据导入导出命令举例

2016-04-06 21:05 555 查看
以下举例基于mysql中已建好数据库如下:

a,school且其包括t_student、t_teacher表

b,company且其包括t_staff、t_leader

一,mysql账号增删改查

1)创建account1账号并设置密码,同时设置其可远程和本机访问school和company数据中所有表并拥有增删改查等所有权限。

a,

想要本机服务器能连接到,必须进行如下两步骤:在user表中增加两条记录--------------------------A
mysql>CREATE USER 'account1'@'localhost' IDENTIFIED BY 'mypasswd';

              mysql>CREATE USER 'account1'@'127.0.0.1' IDENTIFIED BY 'mypasswd';

 

        若只想让外部ip访问到,其中%代表通配所有外部ip:在user表中增加一条记录--------------------------B     
mysql>CREATE USER 'account1'@'%' IDENTIFIED BY 'mypasswd';

此情况执行A+B。

b,将所有数据库的所有操作权限赋值给account1用户,且外部访问ip无限制

mysql>GRANT ALL PRIVILEGES ON *.* TOaccount1@"%" IDENTIFIED BY "mypasswd";

mysql>flush privileges;
  

或者

mysql>GRANT ALL PRIVILEGES ON school.* TOaccount1@"%" IDENTIFIED BY "mypasswd";

mysql>GRANT ALL PRIVILEGES ON company.* TOaccount1@"%"
IDENTIFIED BY "mypasswd";

mysql>flush privileges;

2) 创建account2账号并设置密码,同时设置其只可远程和本机访问school数据中所有表并只拥有增改查权限。

a,

想要本机服务器能连接到,必须进行如下两步骤:在user表中增加两条记录--------------------------A
mysql>CREATE USER 'account2'@'localhost' IDENTIFIED BY 'mypasswd';

              mysql>CREATE USER 'account2'@'127.0.0.1' IDENTIFIED BY 'mypasswd';

 

        若只想让外部ip访问到,其中%代表通配所有外部ip:在user表中增加一条记录--------------------------B     
mysql>CREATE USER 'account2'@'%' IDENTIFIED BY 'mypasswd';

此情况执行A+B。

b,将school数据库的增改查操作权限赋值给account2用户,且外部访问ip无限制

mysql>GRANT select,update,insert PRIVILEGES ON school.* TOaccount1@"%" IDENTIFIED BY "mypasswd";

mysql>flush privileges;

3)用户的删改查

a,查看account2用户权限

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



mysql>select *from mysql.user where user='account2';

b,修改account2用户密码

mysql>update user set password=password('new_password') where user='account2';
mysql>flush privileges;



mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');



注意:如果root密码忘记或者丢失,则先杀掉mysqld的相关进程然后

#mysqld_safe --skip-grant-tables &

#mysq
4000
l -u root mysql

  mysql> UPDATE user SET password=PASSWORD("new password") WHERE user='root';

  mysql> FLUSH PRIVILEGES;


c,删除account2用户

mysql>delete from mysql.user where user = 'account2';

二,mysql数据导出导入

a,导出:

1)导出school数据库的数据到(/home/file/school.sql)

mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql

#cd /home/file
#mysqldump -uroot -pmypasswd school > school.sql


2)只导出school数据库的表结构
mysqldump -u用户名 -p密码 -d 数据库名 > 数据库名.sql
 #mysqldump -uroot -p -d school > school.sql


  3)导出school数据库中t_student表数据
#mysqldump -uroot -pmypasswd school t_student > /home/file/t_access_log.sql

  4)导出school数据库中t_student表的部分数据(年龄大于16小于18)
#mysqldump -uroot -pmypasswd school t_student --where="age>'16' and age<'18'" > /home/t_student.sql

b,导入:

mysql>create database school;(进入mysql命令行界面建立数据库school)

1)设置编码为utf8,导入school.sql文件到新建立的school数据库

mysql>use school;

mysql>set names utf8;

mysql>source /home/file/school.sql

    2)导入school.sql文件到新建立的school数据库

#mysql -uroot -p school < /home/file/school.sql(回车输入密码即可)

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: