mysql密码-安全

MYSQL数据库的安全配置
MYSQL密码的修改与恢复
MYSQL数据库密码的修改

Mysql5.7以下默认root登录密码为空,安装完成之后首先需要修改root的登录密码。
#mysqladm –uroot password ‘new_password’
或者登录mysql后修改
mysql> use mysql;
mysql>update user set password=PASSWORD(‘mysql’) where user=‘root’;
mysql> flush privileges;
修改旧密码:
#mysqladmin -uroot -p原密码 password‘新密码’
忘记MYSQL密码后的恢复
先关闭mysql

#cd /usr/local/mysql/bin
#./mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
#mysql –uroot
mysql> use mysql;
mysql> update user set password=PASSWORD(‘mysql’) where user=‘root’;
mysql> flush privileges;
mysql> exit;
#vi /etc/my.cnf
[mysqld]
skip-grant-tables
#service mysqld restart
#mysql -uroot –p

Mysql数据库的备份与恢复
MYSQL数据库的备份

mysqldump命令将数据库中的数据备份成一个文本文件。表的结构和表中的数据将存储在生成的文本文件中。
mysqldump命令的工作原理很简单。它先查出需要备份的表的结构,再在文本文件中生成一个CREATE语句。然后,将表中的所有记录转换成一条INSERT语句。然后通过这些语句,就能够创建表并插入数据。
mysqldump –u 用户名 –p 数据库名 [表名1 表名2…]> 存放目录/文件名.sql
备份多个数据库
加上—databases这个选项,则备份多个数据库
Mysqldump –u 用户名 –p –databases 数据库名1 数据库名2 …>文件目录/文件名称.sql
备份所有数据库:
mysqldump –u 用户名 –p –all-databases >文件存放目录/文件名称.sql
直接复制整个数据库目录的备份方法
  MySQL有一种非常简单的备份方法,就是将MySQL中的数据库文件直接复制出来。这是最简单,速度最快的方法。
不过在此之前,要先将服务器停止,这样才可以保证在复制期间数据库的数据不会发生变化。如果在复制数据库的过程中还有数据写入,就会造成数据不一致。这种情况在开发环境可以,但是在生产环境中很难允许备份服务器。
  注意:这种方法不适用于InnoDB存储引擎的表,而对于MyISAM存储引擎的表很方便。同时,还原时MySQL的版本最好相同。
使用mysqlhotcopy复制
MYSQL表的备份
mysqldump –u 用户名 –p 数据库名 [表名1 表名2…]> 存放目录/文件名.sql
MYSQL数据库与表的恢复
mysql -u用户名 -p 数据库名 < 文件目录/文件名.sql
或者
mysql –uroot –p
use 数据库名;
Source /xxx/文件名.sql
恢复某个数据库中的表:
例如:恢复mysql数据库中的table表。
mysql> use mysql;
mysql> source /backup/table.sql;

MYSQL数据库的安全配置
MYSQL数据库用户的添加

新建用户:
Create user ‘用户名’@‘%’ identified by ‘用户密码’;
%:通配符,表示该用户可以从任意远程主机登录。
Create user ‘zs’@‘localhost’ identified by ‘123456’;
删除用户:
Delete from mysql.user where user=’zs’;

MYSQL数据库用户的权限设置

增加用户权限:grant语句
Grant all on 数据库名.* to 用户名;
Grant select,update,insert on test2.* to zs;
撤销用户权限:revoke语句
Revoke select on test2.* from zs;
查看用户有哪些权限:
show grants for 用户名;

发布了28 篇原创文章 · 获赞 0 · 访问量 181

猜你喜欢

转载自blog.csdn.net/xiaowoniuwzx/article/details/105168354