一、导出数据库:
1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录
如我输入的命令行:cd D:\Program Files\MySQL\MySQL Server 5.5\bin
(或者直接将windows的环境变量path中添加该目录)
2,导出数据库:mysqldump -u 用户名 -p 数据库名 > 导出的文件名
如我输入的命令行:mysqldump -u lmapp -p lmapp -P 3308 > lmapp.sql (输入后会让你输入进入MySQL的密码)
(如果导出单张表的话在数据库名后面输入表名即可)
mysql导出数据库一个表
mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -u lmapp -p lmapp users> test_users.sql (结尾没有分号)
3、会看到文件news.sql自动生成到bin文件下
二、导入数据库:
1,将要导入的*.sql放在某个路径
2,同上面导出的第1步
3,进入MySQL:mysql -u 用户名 -p,如命令行:mysql -u root -p (输入同样后会让你输入MySQL的密码)
4,在MySQL中新建你要建的数据库 如新建一个名为news的目标数据库,如命令行:CREATE DATABASE news
5,输入:mysql>use 目标数据库名,如命令行:mysql>use news;
6,导入文件:mysql>source 导入的文件名,如命令行:mysql>source news.sql;
三、授权用户访问
输入命令:
GRANT USAGE ON news.* TO 'username'@'%' IDENTIFIED BY 'password';
如果出现如下错误:
The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
解决办法:
mysql> set global read_only=0;
(关掉新主库的只读属性)
flush privileges;
set global read_only=1;(读写属性)
flush privileges;
解释:
set global read_only=0; 关闭只读,可以读写
set global read_only=1; 开始只读模式
========================
附:
一、用户授权
1、选择数据表
语句如下:use mysql;
2、在mysql的user表中增加连接用户帐号:
这里不要直接使用INSERT语句添加user记录,使用INSERT可能出现:
ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value错误。不过早期的MYSQL版本笔者倒没出现这个错误,因为天缘一直都是直接修改user表或直接使用INSERT语句完成,后来升级 MYSQL到5.1的时候,发现可能会出现这个错误。
建议使用GRANT语句进行授权,语句如下:
GRANT USAGE ON *.* TO 'username'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
上句:
“username”替换为将要授权的用户名,比如clientusr;
“password”替换为clientusr设置的密码;
3、可访问数据表授权
创建好帐户之后,就开始给上面的common user进行数据表授权,步骤3中增加的连接用户默认权限都是“N”的,必须在db表中为该帐户授权,允许其访问专用数据库,当然超级用户就不说了。
使用下面语句:
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON yourdbname.tablename TO 'username'@'localhost' IDENTIFIED BY 'password';
本语句中的权限根据实际需要确定:
"tablename"替换为授权访问的数据表table名
"username"是步骤2授权用户名
"password"是步骤2授权用户的设置密码
这样就为该用户授予了对某数据表的SELECT, INSERT, UPDATE, DELETE, CAREATE, DROP权限。
4、生效授权,创建完毕
一句话即可:FLUSH PRIVILEGES;
二、查看默认端口号
1、登录mysql
[root@localhost ~]# mysql -uroot -p
Enter password: 输入数据库密码;
2、使用show global variables like 'port'; 命令查看端口号,