操作步骤如下:
1、启动新的mysql服务
#:bin/mysqld_safe --port=3308 --socket=/tmp/mysql2.sock &
2、同步mysql服务权限【可选】
//同步权限数据 #:mysqldump --opt mysql | mysql -P 3308 --socket=/tmp/mysql2.sock mysql //在每一次的升级过程中,mysql_upgrade这个命令我们都应该去执行,它通过 //mysqlcheck命令帮我们去检查表是否兼容新版本的数据库同时作出修复, //还有个很重要的作用就是使用mysql_fix_privilege_tables命令去升级权限表。 #: mysql_upgrade -P 3308 --socket=/tmp/mysql2.sock
2、同步应用数据
TO_MYSQL_SOCK=/tmp/mysql2.sock TO_MYSQL_PORT=3308 dataList=`mysql -s -e "show databases"` for databaseName in ${dataList[*]} do # 过滤掉不需要同步的表 case $databaseName in Database|mysql|test|performance_schema|information_schema) echo "ignore Database:"$databaseName ;; *) echo "创建数据库:"$databaseName mysqladmin -P ${TO_MYSQL_PORT} --socket=${TO_MYSQL_SOCK} create ${databaseName} mysqldump --opt ${databaseName} | mysql -P ${TO_MYSQL_PORT} --socket=${TO_MYSQL_SOCK} ${databaseName} ;; esac done
3、关掉旧数据库服务,启用新数据库服务
常用指令:
授权:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.0.%' IDENTIFIED BY '1' WITH GRANT OPTION;
编码集:
SHOW VARIABLES LIKE 'character_set_%';
二进制日志清除:
mysql > flush logs;
mysql > reset master;
删除没用的密码
delete from user where password ="";
FLUSH PRIVILEGES;
初设密码:
./bin/mysqladmin -u root password 'new-password'
./bin/mysqladmin -u root -h server-171 password 'new-password'
5.6.10版本编译(默认字符utf8)
cmake -DCMAKE_INSTALL_PREFIX=/opt/app/mysql-5.6.10 \
-DMYSQL_DATADIR=/opt/app/mysql-5.6.10/data \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all
慢查询语句(my.cnf)
long_query_time=1
log_slow_queries= /usr/local/mysql/var/slow_query.log
修改文件权限
chown -R mysql:mysql ${dbname}