mysql数据库管理小结

1.须要从A数据库完整复制一份到B数据库php

  直接在Linux下,若是是服务器复制到本身服务器自己mysql

  mysqldump test -u root -ppassword --add-drop-table | mysql test1 -u root -ppasswordsql

使用的时候,会有如下的提示:(能够忽略该提示)数据库

 Warning: Using a password on the command line interface can be insecure.服务器

  若是是从本服务器复制到另一台服务器,则是用如下语句:ide

Mysqldump test -uroot  -ppassword --add-drop-table | mysql test1 -h 192.168.1.100 -uroot -ppassword函数

 这样就完成了数据库的远程复制。工具

PS: mysqldump的默认参数是--add-drop-table 默认create表前都会删除之前的表,若是是spa

 --skip-add-drop-table 参数则只有create没有delete行为。设计

 

2.备份还原数据库(数据库维护操做很是频繁的操做之一)

  mysqldump -uroot -proot  test >/home/bak/test.sql(备份数据库到指定的文件夹)

这种优点是导出很是快(navicate等工具遇到数据量比较大的时候,很是耗时间导出)

  数据库还原方法(导入后须要还原)

切换到进入mysql

Mysql -uroot -p;

Use  test2;

而后

Source /home/bak/test.sql;

这样就完成了代码部分的导入还原工做

命令的优点:速度很是快(比用navicateN倍,数量越大,差别越大)

 

3.批量修改数据库的前缀(不少项目都须要统一前缀,或者须要更改前缀)

  修改思路:从information.schems批量读取对应数据库的前缀用concat拼接出所须要修改的语句导出到一个sql文件,而后再用sql文件在对应的数据库里进行执行

Select CONCAT( 'ALTER TABLE ', table_name, ' RENAME TO test_', substring(table_name,3),';' ) FROM information_schema.tables Where  table_schema='test2' and  table_name LIKE 'onethink_%' into outfile '/home/new.sql';

而后

Source  /home/new.sql;

 PS:这种操做方法是直接在mysql界面运行的操做,很是方便的批量改动了前缀(网上的教程用navicate显得的比较复杂)这里对sql语句作下说明:

Concat mysql的拼接函数  rename 重命名的意思  select * from tb1 into file /home/test.sql 是将select语句导出的到指定文件夹

 

4.增长mysql用户(数据库管理须要给其余成员管理的时候必须用到)

   Create  user  test@localhost identified by 123456;

mysql增长一个test123456帐户的语句

  给其受权:(给对应的test用户对test操做所有的权限)

Grant  all  on  test  to  test@localhost with grant option;

  删除对应的用户

  Drop  user  test@localhost;

给远程用户登陆(若是不给密码,则远程登陆的时候不须要密码)

Grant  all  on  test@192.168.1.100  identified by 123456;

当前用户登陆修改密码(通常设置了帐户后,用户都须要登陆修改本身的密码)

Set password = password(654321);


5.将对应的字段转化为数据库

新建数据库(设计数据库表的时候使用,在phpmyadmin,navicatemysqlfront等工具里也能够直接本身创建,这里是数据库的执行语句模板,查看数据库的生成语句show create datbase  test)

CREATE TABLE `onethink_action` (

  `id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',

  `name` char(30) NOT NULL DEFAULT '' COMMENT '行为惟一标识',

 `title` char(80) NOT NULL DEFAULT '' COMMENT '行为说明',

  `remark` char(140) NOT NULL DEFAULT '' COMMENT '行为描述',

  `rule` text NOT NULL COMMENT '行为规则',

  `log` text NOT NULL COMMENT '日志规则',

  `type` tinyint(2) unsigned NOT NULL DEFAULT '1' COMMENT '类型',

  `status` tinyint(2) NOT NULL DEFAULT '0' COMMENT '状态',

  `update_time` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '修改时间',

  PRIMARY KEY (`id`)

) ENGINE=MyISAM AUTO_INCREMENT=12 DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='系统行为表';

相关文章
相关标签/搜索