mysql 5.7.13 安装配置方法图文教程(linux)

学习了:https://www.cnblogs.com/zhao1949/p/5947938.html

/usr/local/mysql是把安装文件拷贝过去的;

启动mysql的时候,出现/usr/bin/mysql没有的问题,竟然直接拷贝过去一个;

增加 groupadd mysql,user -g就是可以创建用户组;

需要修改redolog、undolog文件夹位置;修改其文件夹权限为mysql的;

需要手动创建redolog文件夹,而且指定为mysql用户所有;才可以正常启动mysql;innodb不会自己创建文件夹;

修改innodb_undo_tablespaces = 0

登陆不了,还需要去掉密码登陆:https://blog.csdn.net/learner_lps/article/details/62887343

还需要刷一下root的密码 set password=password('root');   https://jingyan.baidu.com/article/7f41ecec32ac01593d095cb4.html

  1. cd /usr/local
    tar -zxvf mysql-xxx.tar.gz
    mv mysql-xxx mysql
    mkdir -p /data/mysql
    mdir /data/log
    groupadd mysql # 还是要创建用户组
    useradd -r -s /sbin/nologin -g mysql mysql -d /usr/local/mysql
    chown -R mysql:mysql /data # 需要把/data的目录也修改为mysql拥有,否则还是不能正常创建;
    chown -R mysql:mysql /usr/local/mysql
    vi /etc/profile # 将/usr/local/mysql/bin 放入到PATH中
    source /etc/profile
  2. bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql
    # 注意记录临时密码,如果没有显示,在log中查找
    bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql
    # --initialize-insecure 生成空密码
    # basedir是基础目录,是原来的gz程序解压之后的目录,datadir是存数据用的;
  3. bin/mysql_ssl_rsa_setup --datadir=/data/mysql
  4. vi /etc/my.cnf 在其中指定
  5. innodb_log_group_home_dir=/data/log/mysql/redolog/
  6. innodb_undo_direcotry=/data/log/mysql/undolog/
    # 注意手动创建这些文件夹,并且chown到mysql用户,还有一个/data/log/mysql/mysqld.log文件,也需要手动创建然后chown给mysql
    mkdir /data/log/mysql
    mkdir /data/log/mysql/redolog
    mkdir /data/log/mysql/undolog
    touch /data/log/mysql/mysqld.log
    chown -R mysql:mysql /data/log
  7. vi /etc/init.d/mysql
  8. bin/mysqld_safe --user=mysql & #启动mysql
  9. bin/mysql --user=root -ppassword #进入mysql
  10. set password=password('root'); #修改密码
  11. grant all privileges on *.* to 'root'@'%' identified by 'root'; #创建远程root连接
  12. flush privileges;
  13. \q #退出mysql
  14. vi /etc/profile
  15. export PATH=/usr/local/mysql/bin:$PATH
  16. source /etc/profile
  17. chmod /etc/init.d/mysql
  18. chkconfig --add mysql
  19. chkconfig --level mysql on

磁盘满了,然后kill掉进程之后就无法正常启动了;

  1. 1,删除了一些文件,就无法正常启动数据库了;
  2. 2,使用bin/mysqld --initialize --user=mysql --basedir=/var/local/mysql --datadir=/data/mysql的时候提示data文件夹不为空,清空之;
  3. 3,重新创建数据库之后,没有提示密码是什么,在/data/mysql/mysqld.log中也没有找到;
  4. 4,发现不知道密码无法停止,直接kill掉了;
  5. 5,在/etc/my.cnf的[mysqld]中增加
  6. skip-grant-tables
  7. 然后启动之;
  8. 6mysql #进入数据库
  9. mysql> use mysql
  10. mysql>update mysql.user set authentication_string=password('newpass') where user='root' and Host ='localhost';
  11. mysql>update user set plugin="mysql_native_password";
  12. mysql>flush privileges;
  13. mysql>quit;
  14. 7,感觉操作之后还是有问题;
  15. 进行修改:
  16. set password=password('root');
  17. grant all privileges on *.* to 'root'@'%' identified by 'root';
  18. flush privileges;
  19. \q
    8,关闭数据库
    bin/mysqladmin -uroot -proot shutdown

之后创建数据库,导入数据;

发现硬盘空间不够,学习:https://blog.csdn.net/qq_34924407/article/details/80556557

  1. mysql
  2. mysql>reset master;
  3. 但是这个没有效果,只有0行受影响;
  4. 修改 /etc/my.conf
  5. expire_log_days=1;
  6. 禁用日志:
  7. #log-bin=mysql-bin
  8. #binlog_format=mixed

mysql5.7安装遇到的问题总结,持续更新:https://blog.csdn.net/liukai6/article/details/78481308

创建数据库,导入数据

  1. mysql -uroot -proot
  2. create database db01 default charset utf8 collate utf8_general_ci;
  3. create database db02 default charset utf8 collate utf8_general_ci;
  4. use db01;
  5. source /usr/local/mysql/db01.sql
  6. use db02;
  7. source /usr/local/mysql/db02.sql
    数据库导出:
    ./bin/mysqldump -uroot -proot -h192.168.0.100 db01 > db01.txt

数据库过了几天数据量较大,删除记录之后空间还是不会释放,

学习了:http://blog.okbase.net/haobao/archive/1213.html

  1. cd /usr/local/mysql
  2. mysqldump -q -uroot -proot --add-drop-table --all-databases > back0728.sql --备份数据库
  3. mysqladmin -uroot -proot shutdown --关闭数据库
  4. cd /data/mysql
  5. rm -f ibdata1 --删除innodb的索引等文件
  6. rm -f mysql-bin.*
  7. rm -rf db01 --删除数据库db01的文件
  8. rm -rf db02 --删除数据库db02的文件
  9. cd /data/log/mysql/redolog
  10. rm -f ib* --删除所有redolog,不删启动不了数据库
  11. nohup mysqld_safe --user=mysql & -- 启动数据库
  12. mysql -uroot -proot -- 登陆mysql
  13. source /usr/local/mysql/back0728.sql -- 恢复数据库备份

没有执行

[mysqld]下增加下面配置
innodb_file_per_table=1

因为查的时候

show variables like '%per_table%'
innodb_file_per_table已经是ON;

整理1:

  1. # 创建如下目录: mkdir -p 级联创建
  2. /data/mysql
  3. /data/log/mysql/mysqld.log
  4. /redolog
  5. /undolog
  6. /usr/local/mysql
  7. /etc/my.cnf
  8. /etc/init.d/mysql
  9. # 解压文件/usr/local/mysql,创建用户,修改目录所属权限,安装启动,设置path
  10. bin/mysqld --initialize --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql
  11. bin/mysql_ssl_rsa_setup --datadir=/data/mysql
  12. bin/mysqld_safe --user=mysql &
  13. # 修改密码,由于skip-grant-tables,而且现在创建的也没有密码
  14. mysql -uroot -p # 直接登录
  15. >use mysql
  16. >update mysql.user set authentication_string=password('root') where user='root';
  17. >update user set plugin='mysql_native_password'; # 可能不执行
  18. >flush privileges;
  19. >\q
  20. 再一次登录
  21. mysql -uroot -proot
  22. >set password=password('root');
  23. >grant all privileges on *.* to 'root'@'%' identified by 'root';
  24. >flush privileges;
  25. >\q

整理2,官网安装步骤:

https://dev.mysql.com/doc/refman/8.0/en/binary-installation.html

注意selinux权限问题:https://my.oschina.net/jathon/blog/1613896

ibdata1文件过大删除过程:

学习了:https://www.cnblogs.com/alibai/p/3650416.html 使用了第三种方法

  1. # 导出所有数据
  2. /usr/bin/mysqldump ––extended-insert ––all-databases ––add-drop-database ––disable-keys ––flush-privileges ––quick ––routines ––triggers > all-databases.sql
  3. mysqladmin -uroot -proot shutdown
  4. rm -rf /data/mysql/ib* # 删除大文件
  5. rm -rf /data/log/redolog/* # 删除日志文件,否则启动不了
  6. rm -rf /data/mysql/db01* # 删除数据库文件夹,否则启动后就没有表了
  7. nohup mysqld_safe --user=mysql & # 启动数据库
  8. mysql -uroot -proot # 登陆数据库
  9. set foreign_key_checks=0;
  10. source all-databases.sql;
  11. set foreign_key_checks=1;

修改密码:

  1. ALTER USER 'root'@'%' identified by 'newpass';
    或者 指定可以访问的IP地址,多创建几个用户,指定固定的IP地址;

新建用户:

学习了:https://www.cnblogs.com/sos-blue/p/6852945.html

  1. create user 'pig'@'%' identified by 'pig';
  2. grant all on *.* to 'pig'@'%';
    还可以改为一句:
    grant all on *.* to 'pig'@'%' identified by 'pig';
    添加grant权限:
    grant all on *.* to 'pig'@'%' identified by 'pig' with grant option;
    删除用户:
    drop user pig; 这个是指 drop user pig@'%';
    drop user 'pig'@'localhost'; 需要指定localhost

进行过程维护

  1. 1show processlist; # https://www.cnblogs.com/shihuc/p/8733460.html
  2. 查看哪些线程在运行;
  3. 可以使用 kill [connection|query] id; 进行连接的中断
  4. 2,修改 innodb_buffer_pool_size的大小;
  5. 在/etc/my.cnf中修改后重启,或者>set innodb_buffer_pool_size=100G
  6. 如果修改/etc/my.cnf过程中有乱码问题,
  7. sudo sed -i "s/innodb_buffer_pool_size=1G/innodb_buffer_pool_size=100G/g" /etc/my.cnf
    sed -i 修改文件内容;s-字符串替换 g-全局替换;https://blog.csdn.net/yjk13703623757/article/details/79548450
  8. 3,忽略主从复制过程中的异常问题
  9. slave_skip_errors = 1007,1008,1050,1051,1054,1060,1061,1062,1068,1091,1146
  10. 详细错误定义:https://blog.csdn.net/qq_36592808/article/details/79964826
    4,查看磁盘的I/O压力;# https://zhidao.baidu.com/question/1177303907569183459.html
    使用top命令,查看wa内容,I/O等待所占CPU时间比例,大于30%压力就过大了;
    使用iostat -x 1 888 # 执行888次I/O状态查看,查看 %util的数值;
    可以使用 time dd if=/dev/zero bs=1M count=2048 of=direct_2G 来测试I/O性能;
    time 计时,可以使用 time sleep 2 测试;
    dd 转换拷贝文件; if输入文件,of输出文件,bs一次读的大小,count读的次数;

mysql 5.7.13 安装配置方法(linux)-后期部分运维的更多相关文章

  1. mysql 5.7.13 安装配置方法图文教程(win10) (转)

    http://www.jb51.net/article/87152.htm ***************************** MySQL是一款关系型数据库管理系统,是由Oracle旗下公司M ...

  2. mysql 5.7.13 安装配置方法图文教程(linux) (转)

    http://www.jb51.net/article/87160.htm ************************************************ linux环境Mysql ...

  3. mysql 5.7.13 安装配置方法

    linux环境Mysql 5.7.13安装教程分享给大家,供大家参考,具体内容如下: 1系统约定 安装文件下载目录:/data/software Mysql目录安装位置:/usr/local/mysq ...

  4. mysql 5.7.15 安装配置方法图文教程(转)

    http://www.jb51.net/article/92521.htm ******************************* MySQL数据库作为关系型数据库中的佼佼者,因其体积小,速度 ...

  5. mysql 5.7.14 安装配置方法图文教程(转)

    http://www.jb51.net/article/90259.htm ******************************** 因笔者个人需要需要在本机安装Mysql,先将安装过程记录如 ...

  6. WINDOWS mysql 5.7.15 安装配置方法图文教程

    因本人需要需要安装Mysql,现将安装过程记录如下,在自己记录的同时,希望对有疑问的人有所帮助. 一.下载软件 1. 进入mysql官网,登陆自己的oracle账号(没有账号的自己注册一个),下载My ...

  7. mysql 8.0.12 安装配置方法图文教程

    一.安装 1.从网上下载MySQL8.0.12版本,下载地址 2. 下载完成后解压 我解压的路径是:D:\Java\mysql-8.0.12-winx64 3. 配置文件 首先在解压的路径下查看是否含 ...

  8. Windows10下mysql 8.0.19 安装配置方法图文教程

    第一步 下载安装包: 官网 毕竟是甲骨文公司的产品,去官网下真的慢! 这里有两个供选择的,我建议选第一个(因为我先下了第二个,结果失败了,不知道为什么总是出错.) 下载完自行选择路径解压就可以了. 第 ...

  9. mysql 8.0.17 安装配置方法图文教程

    1.URL:https://www.jb51.net/article/167782.htm 2.装好之后需要使用add user中的用户名和密码登录(之前安装数据库时出现的) 使用navicat连接时 ...

随机推荐

  1. 【反演复习计划】【bzoj4407】于神之怒加强版

    #include<bits/stdc++.h> #define N 5000010 #define yql 1000000007 using namespace std; typedef ...

  2. Java坦克大战 (二) 之画一个能动的圆圈代表坦克

    本文来自:小易博客专栏.转载请注明出处:http://blog.csdn.net/oldinaction 在此小易将坦克大战这个项目分为几个版本,以此对J2SE的知识进行回顾和总结,希望这样也能给刚学 ...

  3. OC的UUID生成

    NSString *uuidStr = [[NSUUID UUID] UUIDString];

  4. 【转】java中的集合和数组

    转载自:http://www.cnblogs.com/summers/p/4094260.html 数组Array和集合的区别: (1)数组是大小固定的,并且同一个数组只能存放类型一样的数据(基本类型 ...

  5. admin管理工具

    admin组件使用 Django 提供了基于 web 的管理工具. Django 自动管理工具是 django.contrib 的一部分.你可以在项目的 settings.py 中的 INSTALLE ...

  6. 一个杀不死的小强,kill进程无效的原因 记录故障排查过程中kill进程无效的分析过程

    今天在处理一个机器异常负载(1000+)的问题,碰到了一个从未碰到过的情况,遇到了一个异常顽固的分子.我使用了所能想到的所有杀进程的方法,却始终无法干掉这个顽固分子,最后终于在谷歌大神的指引下,干掉了 ...

  7. HDU 6216 A Cubic number and A Cubic Number【数学思维+枚举/二分】

    Problem Description A cubic number is the result of using a whole number in a multiplication three t ...

  8. ( 转 ) Mysql group_concat 的反向应用实现(Mysql列转行)

    用过Mysql的都知道她有一个很好的实现行转列功能的函数group_concat函数,非常方便 点击(此处)折叠或打开 SELECT * FROM group_test; SELECT id, GRO ...

  9. luogu P2024 食物链

    题目描述 动物王国中有三类动物 A,B,C,这三类动物的食物链构成了有趣的环形.A 吃 B,B 吃 C,C 吃 A. 现有 N 个动物,以 1 - N 编号.每个动物都是 A,B,C 中的一种,但是我 ...

  10. codevs 4163 求逆序对的数目 -树状数组法

    4163 hzwer与逆序对  时间限制: 10 s  空间限制: 256000 KB  题目等级 : 黄金 Gold 题目描述 Description hzwer在研究逆序对. 对于数列{a},如果 ...