97,mysql 的互为主从配置搭建,双主高可用配置 第一章,第二章(day97)

第一章 MySQL基础入门篇

1,登陆mysql

连接mysql:

格式: mysql -h 主机地址 -A test -u 用户名 -p 密码 //-A 接你想连接的库名

更改MySQL密码:./mysqladmin -uroot  -p 456

2,授权mysql用户

#显示用户权限

show grants for '用户名'@'IP';

#授权

grant 权限 on 数据库.表 to '用户名'@'IP';

#刷新权限(立即生效)

flush privileges;

3,

格式:grant select on 数据库.* to 用户名@登录主机 identified by “密码”

(1)、增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询 、插入、修改、删除的权限。首先用root用户连入MYSQL,然后键入以下命令:

 mysql>grant select,insert,update,delete on *.* to test1@"%" Identified by "abc"; 但增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet上的任 何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了,解决办法见2。

(2)、增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库 mydb进行查询、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的 那台主机),这样用户即使用知道test2的密码,他也无法从internet上直接访问数据库。 mysql>grant select,insert,update,delete on mydb.* to test2@localhost identified by "abc";

如果你不想test2有密码,可以再打一个命令将密码消掉。 

mysql>grant select,insert,update,delete on mydb.* to test2@localhost identified by ""; 

如果想给一个用户test2授予访问mydb数据库的所有权限,并且仅允许test2在 192.168.11.121这个客户端ip登录访问,可执行如下命令:

mysql>grant all on mydb.* to test2@192.168.11.121 identified by "abc";

(3)、修改表名 命令:rename table 原表名 to 新表名;

 

例如:在表MyClass名字更改为YouClass    mysql> rename table MyClass to YouClass

4, 备份数据库

(1)、导出整个数据库 导出文件默认是存在    

mysqldump -u 用户名 -p 数据库名 > 导出的文件名    

mysqldump -u user_name -p123456 database_name > outfile_name.sql

(2)、导出一个表    

mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名    

mysqldump -u user_name -p database_name table_name > outfile_name.sql

(3)、导出一个数据库结构    

mysqldump -u user_name -p -d –add-drop-table database_name > outfile_name.sql     -d 没有数据

–add-drop-table 在每个create语句之前增加一个drop table //防止数据导入新库中,存在相同的表名而出现导入错误

(4)、带语言参数导出 mysqldump -uroot -p –default-character-set=latin1 –set-charset=gbk – skip-opt database_name > outfile_name.sql

5,修改密码 格式:mysqladmin -u用户名 -p旧密码 password 新密码

 

第二章 MySQL基础调优篇(略,无重要的)

 

上一篇:python知识点@函数嵌套,内置函数nonlocal和global


下一篇:Java并发编程-10-保护性暂挂模式在BlockingQueue源码中