mysql5.7在windows不能启动的方法及查看数据库大小命令
1.将mysql目录下的my-default.ini改为my.ini
2.cmd进入mysql的bin目录下
3.执行mysqld –initialize进行初始化(如果mysql目录下已经存在data文件夹会报错,先把data里面的文件拷贝到别处,命令执行完成后再拷回来)
4.安装服务mysqld –install
5.启动服务net start mysql
ok了
另外注意:mysql5.7会在安装时自动随机生成root密码,修改root密码方法如下:
1、修改 my.ini,在 [mysqld] 小节下添加一行:skip-grant-tables=1
这一行配置让 mysqld 启动时不对密码进行验证
2、重启 mysqld 服务
3、使用 root 用户登录到 mysql:mysql -uroot
4、切换到mysql数据库 mysql> use mysql,更新 user 表:
update user set authentication_string = password(\’12345\’), password_expired = \’N\’, password_last_changed = now() where user = \’root\’;
在之前的版本中,密码字段的字段名是 password,5.7版本改为了 authentication_string
5. mysql>flush privileges;
6、退出 mysql,编辑 my.ini 文件,删除 skip-grant-tables=1 的内容
7、重启 mysqld 服务,用新密码登录测试一下
要想知道每个数据库的大小的话,步骤如下:
1、进入information_schema 数据库(存放了其他的数据库的信息)
use information_schema;
2、查询所有数据的大小:
select concat(round(sum(data_length/1024/1024),2),\’MB\’) as data from tables;
3、查看指定数据库的大小:
比如查看数据库home的大小
select concat(round(sum(data_length/1024/1024),2),\’MB\’) as data from tables where table_schema=\’home\’;
4、查看指定数据库的某个表的大小
比如查看数据库home中 members 表的大小
select concat(round(sum(data_length/1024/1024),2),\’MB\’) as data from tables where table_schema=\’home\’ and table_name=\’members\’;
多核线程设置
innodb_thread_concurrency=64
innodb_read_io_threads=4
innodb_write_io_threads=4