mysql维护管理
1.删除数据库中test下的所有前缀为tmp的表;
mysql -e "select concat('drop table test.',table_name,';') from information_schema.tables where table_schema='test' and table_name like 'tmp%';"|grep -v concat
2.将数据库中test下所有存储引擎为myisam的表改为innodb
mysql -e "select concat('alter table test1.',table_name,' engine=innodb;') from information_schema.tables where table_schema='test' and engine='MyISAM';"|grep -v concat
commit and chain
chain和release子句分别用来定义在事务提交或者回滚之后的操作,chain会立即启动一个新事物,并且和刚才的事务具有相同的级别,
release则会断开和客户端的联接;
start transaction命令开启一个新的事物,会造成一个隐含的unlock tables被执行。
最好不要在同一个事务中使用不同的存储引擎的表,通常情况下,只对提交的事务记录到二进制的日志中,但是如果一个事务中包含非事务表,那么回滚操作也会记录到二进制日志中,保证slave的数据一致。
mysql升级
shell>mkdir dumpdir
shell>mysqldump --tab=dumpdir db_name
shell>mysqladmin create db_name
shell>cat dumpdir/*.sql |mysql db_name
shell>mysqlimport db_name dumpdir/*.txt
shell>cp -R /home/mysql_old/data/mysql /home/mysql_new/data/
shell>mysql_fix_privileges_tables;
shell>/etc/init.d/mysqld restart
binlog日志
--binlog-do-db:该选项告诉主数据库,如果当前的数据库(USE选的的数据库)是db_name,应该更新记录到binlog日志中。
--binlog-ignore-db:该选项告诉主服务器,如果当前的数据库(即USE选定的数据库)是db_name,应该更新记录到binlog日志中。
--innodb-safe-binlog:此选项经常和--sync-binlog=N(每写N次日志同步到磁盘)一起配合使用,使得事务在日志中的记录更加安全。
set sql_log_bin=0:具有super权限的客户端可以通过此sql语句禁止将自己的语句写入二进制记录。
查询日志
--log-output[=value,...]来进行控制,value值可以是table、file、none的一个或多个的组合。none的优先级最高,如果有none其他不生效
general_log | OFF |
general_log_file | /mysql/data/localhost.log |
慢查询日志
slow_query_log | ON |
slow_query_log_file | /mysql/log/slowquery1.log |
执行时间超过参数long_query_time(s)设置的值并扫描的记录数不小于min_examined_row_limit的所有sql语句的日志
注:获得表锁定的时间不算作执行时间
默认情况下,管理语句和不使用索引进行查询的语句不记录在慢查询日志。要监控这两类语句,可以分别通过参数--log-slow-admin-statement和log_queries_not_using_indexes
在mysql5.1.29以后,--log-slow-queries已经不推荐使用了
mysql> show variables like '%slow%';
+---------------------+---------------------------+
| Variable_name | Value |
+---------------------+---------------------------+
| log_slow_queries | ON |
| slow_launch_time | 2 |
| slow_query_log | ON |
| slow_query_log_file | /mysql/log/slowquery1.log |
+---------------------+---------------------------+
1.删除数据库中test下的所有前缀为tmp的表;
mysql -e "select concat('drop table test.',table_name,';') from information_schema.tables where table_schema='test' and table_name like 'tmp%';"|grep -v concat
2.将数据库中test下所有存储引擎为myisam的表改为innodb
mysql -e "select concat('alter table test1.',table_name,' engine=innodb;') from information_schema.tables where table_schema='test' and engine='MyISAM';"|grep -v concat
commit and chain
chain和release子句分别用来定义在事务提交或者回滚之后的操作,chain会立即启动一个新事物,并且和刚才的事务具有相同的级别,
release则会断开和客户端的联接;
start transaction命令开启一个新的事物,会造成一个隐含的unlock tables被执行。
最好不要在同一个事务中使用不同的存储引擎的表,通常情况下,只对提交的事务记录到二进制的日志中,但是如果一个事务中包含非事务表,那么回滚操作也会记录到二进制日志中,保证slave的数据一致。
mysql升级
shell>mkdir dumpdir
shell>mysqldump --tab=dumpdir db_name
shell>mysqladmin create db_name
shell>cat dumpdir/*.sql |mysql db_name
shell>mysqlimport db_name dumpdir/*.txt
shell>cp -R /home/mysql_old/data/mysql /home/mysql_new/data/
shell>mysql_fix_privileges_tables;
shell>/etc/init.d/mysqld restart
binlog日志
--binlog-do-db:该选项告诉主数据库,如果当前的数据库(USE选的的数据库)是db_name,应该更新记录到binlog日志中。
--binlog-ignore-db:该选项告诉主服务器,如果当前的数据库(即USE选定的数据库)是db_name,应该更新记录到binlog日志中。
--innodb-safe-binlog:此选项经常和--sync-binlog=N(每写N次日志同步到磁盘)一起配合使用,使得事务在日志中的记录更加安全。
set sql_log_bin=0:具有super权限的客户端可以通过此sql语句禁止将自己的语句写入二进制记录。
查询日志
--log-output[=value,...]来进行控制,value值可以是table、file、none的一个或多个的组合。none的优先级最高,如果有none其他不生效
general_log | OFF |
general_log_file | /mysql/data/localhost.log |
慢查询日志
slow_query_log | ON |
slow_query_log_file | /mysql/log/slowquery1.log |
执行时间超过参数long_query_time(s)设置的值并扫描的记录数不小于min_examined_row_limit的所有sql语句的日志
注:获得表锁定的时间不算作执行时间
默认情况下,管理语句和不使用索引进行查询的语句不记录在慢查询日志。要监控这两类语句,可以分别通过参数--log-slow-admin-statement和log_queries_not_using_indexes
在mysql5.1.29以后,--log-slow-queries已经不推荐使用了
mysql> show variables like '%slow%';
+---------------------+---------------------------+
| Variable_name | Value |
+---------------------+---------------------------+
| log_slow_queries | ON |
| slow_launch_time | 2 |
| slow_query_log | ON |
| slow_query_log_file | /mysql/log/slowquery1.log |
+---------------------+---------------------------+
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29620572/viewspace-1811659/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29620572/viewspace-1811659/