mysql一个备用数据库,mysql备用常识

mysql 登录用户名和密码中如果有特殊字符,需要用引号括起来。

比如我登录mysql:mysql -ujianchen -p"woshimima@&axx

"

但是需要注意的不能用单引号,需要用双引号

二:无法从其他机器远程连接mysql数据库

别人的机器连我的本机数据库,报“Access denied”错误。后来查阅资料后,知道是由于mysql 4.1以后增加了安全限制,默认root账户可以以localhost和其他IP的方式登录。如果是其他用户则需要配置一下才行。

mysql中对用户的权限和密码信息存储在mysql库的user表中。

该表的结构如下:

1457564769.jpg

该表的localhost属性指定了用户的访问来源,如果是不限制机器IP,可以设置成'%',也可以指定具体的IP地址。

通过修改该表用户对应的localhost属性值为'%',问题解决了。

有时候还不行的话,是权限不够,所以再执行以下语句一般就OK了。

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION

FLUSH PRIVILEGES

三,导入数据报"invalid string value"错误

我的数据库编码为GBK,利用navicat 从一张原有表里导出数据为sql脚本文件,后来将该表数据重新插入时,就报该错误。开始怀疑是数据库编码问题,重新安装数据库设置编码为GBK依然报错。后来经提醒,本地文件的编码是否正确。忽然想起来,我之前好像碰到过这个问题,检查后发现该sql文件的编码问题UTF-8,使用记事本另存为ANSI(本地编码),问题解决。

四,导入导出数据库

一、导出数据库用mysqldump命令(注意mysql的安装路径,即此命令的路径):

1、导出数据和表结构:

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

#/usr/local/mysql/bin/mysqldump -uroot -p abc > abc.sql

敲回车后会提示输入密码

2、只导出表结构

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

#/usr/local/mysql/bin/mysqldump -uroot -p -d abc > abc.sql

二、导入数据库

1、首先建空数据库

mysql>create database abc;2、导入数据库

方法一:

(1)选择数据库

mysql>use abc;(2)设置数据库编码

mysql>set names utf8;(3)导入数据(注意sql文件的路径)

mysql>source /home/abc/abc.sql;方法二:

mysql -u用户名 -p 数据库名 < 数据库名.sql

#mysql -uabc_f -p abc < abc.sql注意:有命令行模式,有sql命令

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值