Mysql管理命令,备份与恢复,授权远程访问

MySql命令行登录
--------------------------------------------------------------------------------
mysql -u用户名 -p,回车后输入密码
登录成功后,输入命令:mysql> show databases;验证操作正常否。


为MySql数据库的root账户设置初始密码
--------------------------------------------------------------------------------
刚安装完成的MySql的root初始密码是空的。需要手工设置密码。
输入命令:mysql_secure_installation
要求输入当前root用户的密码,密码为空,直接回车
根据提示输入Y,回车
输入2次密码,回车
再输入很多次回车(意思是使用默认值 )
最后出现:Thanks for using MySQL!
MySql密码设置完成


为MySql数据库创建密码(方法二),或修改密码
--------------------------------------------------------------------------------
[root@AY1207241 /]# mysqladmin -uroot -p'' password '123'
连续回车,由于mysql的root初始密码是空的,所以-p后边没加参数,如果不是第一次修改,需要将你的登录密码加到-p后边,然后用新的密码替代旧密码。
mysqladmin -uroot -p'旧密码' password '新密码'


创建mysql数据库:
--------------------------------------------------------------------------------
# mysqladmin -u root -p 123 create testdb


让root用户可以远程登录
--------------------------------------------------------------------------------
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;


启动、停止、重启  MySQL:
--------------------------------------------------------------------------------
/etc/init.d/mysqld stop   #停止
/etc/init.d/mysqld start  #启动
/etc/init.d/mysqld restart #重启


备份--mysqldump
--------------------------------------------------------------------------------
1、备份--某个库备份到“文件名.sql”
[root@test1 mysql]# mysqldump -u root -p  库名 > 文件名.sql

导出某个库,带drop已存在database语句,带建库语句,带drop 已存在table语句,带建表语句
# mysqldump -u root -p -B --add-drop-database --add-drop-table  库名 > bak.sql
-B 带创建数据库的语句。
--add-drop-table  在每个create语句之前增加一个drop table
--add-drop-database 增加drop database语句

导出某个库,带drop 已存在table语句,带建表语句
# mysqldump -u root -p --add-drop-table  库名 > c:\bak.sql


2.导出某个表的数据
mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql

3.导出某个数据库的结构--带建库语句、建表语句
mysqldump -u wcnc -p -B -d --add-drop-database --add-drop-table smgp_apps_wcnc >d:\wcnc_db.sql
-B 带创建数据库的语句。
-d 不导出数据
--add-drop-table 在每个create语句之前增加一个drop table
--add-drop-database 增加drop database语句

4.带语言参数导出
mysqldump -uroot -p –default-character-set=latin1 –set-charset=gbk –skip-opt databse > d4.sql


恢复--mysqldump命令
--------------------------------------------------------------------------------
把“文件名.sql”导入到某个库(已有库)
[root@test mysql]# mysql -u root -p 库名 < 文件名.sql


恢复--source 命令
--------------------------------------------------------------------------------

把*.sql文件导入某个数据库(已有库)
1进入mysql数据库控制台:mysql -u root -p
2选择数据库:mysql>use 数据库
3使用source命令,导入sql文件:mysql>source d:\wcnc_db.sql


远程访问MySql服务器
--------------------------------------------------------------------------------
客户端远程连接mysql服务器, 要有相关的权限,默认是没有权限的:
出现错误: Access denied for user: '@127.0.0.1' to database 'mysql' ,时也要开权限:
方法如下:
grant all privileges on *.* to [email protected] identified by "1234";
root 为要连接的用户名 @后面是你所要连接mysql服务器的客户机ip,不是mysql服务器ip, "1234" 是登录mysql的密码

连接mysql的时候报错Access denied for user: '[email protected]' (Using password: YES),是你用户的权限不够。

开select,insert,update,delete,create,drop权限
GRANT select,insert,update,delete,create,drop ON samp_db.* TO 用户名@127.0.0.1 IDENTIFIED BY '密码';

开所有权限:
GRANT ALL ON samp_db.* TO test@* IDENTIFIED BY "test"


2. 授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。

GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'10.10.40.54' IDENTIFIED BY '123456' WITH GRANT OPTION;

猜你喜欢

转载自cdzm5211314.iteye.com/blog/2254277