第一章 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基础调优篇(略,无重要的)