发表于: 2017-08-07 23:09:08
1 1004
1.数据备份还原
(1)解决昨天备份数据的问题
问题原因:登录到数据库后执行备份命令,导致一直报错
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'mysql
dump -uroot -p jnshu_student >d:/jnshu_student.sql' at line 1
解决:数据库备份是不需要登录到mysql,直接执行备份sql即可。
mysqldump -uroot -p testdb>d:/test.sql
(2)解决导出乱码的问题
数据库中有中文,发现导出来的文件,所有中文都变成了乱码。
解决:
A.查看该数据库的字符集:
mysql> show variables like 'char%';
+--------------------------+---------------------------------------------------------+
| Variable_name | Value
|
+--------------------------+---------------------------------------------------------+
| character_set_client | utf8
|
| character_set_connection | gbk
|
| character_set_database | utf8
|
| character_set_filesystem | binary
|
| character_set_results | gbk
|
| character_set_server | utf8
|
| character_set_system | utf8
|
| character_sets_dir | C:\Program Files\MySQL\MySQL Server 5.7\share\chars
ets\ |
+--------------------------+---------------------------------------------------------+
B.character_set_database设置为utf8,即可以解决乱码的问题;
mysql> set character_set_database= utf8;
(3)还原数据库
mysql> source d:/testdb.sql
注意:备份还原语句后面不要加冒号“;”,否则会报错。
2.导出数据命令总结
导出数据库为testdb的表结构
mysqldump -u root -p -d testdb >c:\db.sql
导出数据库为testdb某张表(user)结构(加-d)
mysqldump -u root -p -d testdb user>c:\db.sql
导出数据库为testdb所有表结构及表数据(不加-d)
mysqldump -u root -p utestdb >c:\db.sql
导出数据库为testdb某张表(check_zk_log)结构及表数据(不加-d)
mysqldump -u root -p testdb check_zk_log>c:\db.sql
3.问题
进度太慢了,有何解??
4.学习计划
学习数据库的一些高级操作,如索引、游标等
评论