mysql数据库

Linux mysql忘记密码的解决方案

好久不见. 提交于 2020-01-11 00:11:41
1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库。 因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的 状态下,其他的用户也可以任意地登录和修改MySQL的信息。可以采用将MySQL对 外的端口封闭,并且停止Apache以及所有的用户进程的方法实现服务器的准安全 状态。最安全的状态是到服务器的Console上面操作,并且拔掉网线。 2.修改MySQL的登录设置: # vi /etc/my.cnf 在[mysqld]的段中加上一句:skip-grant-tables 例如: [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock skip-grant-tables 保存并且退出vi。 3.重新启动mysqld # /etc/init.d/mysqld restart Stopping MySQL: [ OK ] Starting MySQL: [ OK ] 4.登录并修改MySQL的root密码 # /usr/bin/mysql Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 to server version: 3.23

mysql数据库容量查询

▼魔方 西西 提交于 2020-01-11 00:03:31
1.查看所有数据库容量大小 select table_schema as '数据库',sum(table_rows) as '记录数',sum(truncate(data_length/1024/1024, 2)) as '数据容量(MB)',sum(truncate(index_length/1024/1024, 2)) as '索引容量(MB)'from information_schema.tablesgroup by table_schemaorder by sum(data_length) desc, sum(index_length) desc; 2.查看所有数据库各表容量大小 selecttable_schema as '数据库',table_name as '表名',table_rows as '记录数',truncate(data_length/1024/1024, 2) as '数据容量(MB)',truncate(index_length/1024/1024, 2) as '索引容量(MB)'from information_schema.tablesorder by data_length desc, index_length desc; 3.查看指定数据库容量大小 例:查看mysql库容量大小 select table_schema as '数据库',

【数据分析】快速获取微博用户数据,图片,视频

北城以北 提交于 2020-01-11 00:02:50
功能 输出 实例 运行环境 使用说明 下载脚本 安装依赖 程序设置 设置数据库(可选) 运行脚本 按需求修改脚本(可选) 如何获取user_id 添加cookie与不添加cookie的区别(可选) 如何获取cookie(可选) 如何检测cookie是否有效(可选) 功能 连续爬取 一个 或 多个 新浪微博用户(如 Dear-迪丽热巴 、 郭碧婷 )的数据,并将结果信息写入文件。写入信息几乎包括了用户微博的所有数据,主要有 用户信息 和 微博信息 两大类,前者包含用户昵称、关注数、粉丝数、微博数等等;后者包含微博正文、发布时间、发布工具、评论数等等,因为内容太多,这里不再赘述,详细内容见 输出 部分。具体的写入文件类型如下: 写入 csv文件 (默认) 写入 json文件 (可选) 写入 MySQL数据库 (可选) 写入 MongoDB数据库 (可选) 下载用户 原创 微博中的原始 图片 (可选) 下载用户 转发 微博中的原始 图片 (可选) 下载用户 原创 微博中的 视频 (可选) 下载用户 转发 微博中的 视频 (可选) 下载用户 原创 微博 Live Photo 中的 视频 (可选) 下载用户 转发 微博 Live Photo 中的 视频 (可选) 输出 用户信息 用户id:微博用户id,如"1669879400" 用户昵称:微博用户昵称,如"Dear-迪丽热巴" 性别

Mysql 批量修改 multi-statement not allow解决

拈花ヽ惹草 提交于 2020-01-10 22:55:15
直接上代码(使用此方式,不需要进行任何数据库配置): update t_project_stage_cost_budget update_time = now(), when id = #{item.id,jdbcType=BIGINT} then #{item.personMonths} when id = #{item.id,jdbcType=BIGINT} then #{item.projectStageId} when id = #{item.id,jdbcType=BIGINT} then #{item.subjectCostId} id in #{item.id,jdbcType=BIGINT} 批量新增 insert into t_project_budget_submission( project_id, cost_catagory_id, subject_catagory_id, subject_cost_id, department_num_id, create_time, update_time ) values ( #{p.projectId,jdbcType=BIGINT}, #{p.costCatagoryId,jdbcType=INTEGER}, #{p.subjectCatagoryId,jdbcType=INTEGER}, #{p

Windows 下安装mysql 辅助工具mycli

只谈情不闲聊 提交于 2020-01-10 22:52:54
在MySQL 8.0使用mycli要先确保PyMySQL>=0.6.7 ,亲测有效。 pip3 install pymysql 1 2018年5月1日更新: 多谢楼下小伙伴的提醒,MyCLI确实更强大。 MyCLI 简介 MyCLI 是一个易于使用的命令行客户端,可用于受欢迎的数据库管理系统 MySQL、MariaDB 和 Percona,支持自动补全和语法高亮。它是使用 prompt_toolkit 库写的,需要 Python 2.7、3.3、3.4、3.5 和 3.6 的支持。MyCLI 还支持通过 SSL 安全连接到 MySQL 服务器 安装好 pip 以后,你可以像下面这样安装 MyCLI: $ sudo pip install mycli ———————————————— 来源: https://www.cnblogs.com/qicaoyu1/p/12178333.html

mysql主从复制

别等时光非礼了梦想. 提交于 2020-01-10 22:19:06
                            mysql主从复制                              (超简单) 怎么安装mysql数据库,这里不说了,只说它的主从复制,步骤如下: 注意的是:先安装好两个数据库,并且启动好mysql,在修改配置文件,在重新启动数据库。 1、主从服务器分别作以下操作 : 1.1、版本一致 1.2、初始化表,并在后台启动mysql 1.3、修改root的密码 2、修改主服务器master: #vi /etc/my.cnf [mysqld] log-bin=mysql-bin //[必须]启用二进制日志 server-id=222 //[必须]服务器唯一ID,默认是1,一般取IP最后一段 3、修改从服务器slave: #vi /etc/my.cnf [mysqld] log-bin=mysql-bin //[不是必须]启用二进制日志 server-id=226 //[必须]服务器唯一ID,默认是1,一般取IP最后一段 4、重启两台服务器的mysql /etc/init.d/mysql restart 5、在主服务器上建立帐户并授权slave: mysql> GRANT REPLICATION SLAVE ON *.* to 'mysync'@'%' identified by 'q123456'; 绿色部分表示

linux Xtrabackup安装及使用方法

霸气de小男生 提交于 2020-01-10 22:15:55
[root@centos01 ~]# rpm -Uvh http://www.percona.com/downloads/percona-release/percona-release-0.0-1.x86_64.rpm Retrieving http://www.percona.com/downloads/percona-release/percona-release-0.0-1.x86_64.rpm Preparing... (########################################### [100%] 1:percona-release (########################################### [100%] [root@centos01 ~]# rpm -ql percona-release /etc/pki/rpm-gpg /etc/pki/rpm-gpg/RPM-GPG-KEY-percona /etc/yum.repos.d /etc/yum.repos.d/Percona.repo /usr/share/doc/percona-release-0.0 /usr/share/doc/percona-release-0.0/RPM-GPG-KEY-percona You have new mail in /var

MySQL主从复制

谁说胖子不能爱 提交于 2020-01-10 21:56:36
MySQL主从复制 案例概述 在企业网站中,后端MySQL数据库只有一台时,会有以下问题: 单点故障服务不可用 无法处理大量的并发数据请求 数据丢失 改造办法 增加MySQL数据库服务器,对数据进行备份,形成主备 确保主备MySQL数据库服务器数据是一样的 主服务器宕机了,备份服务器继续工作,数据有保障 MySQL的主从复制与读写分离是密切相关的 更高级的解决方案 通过主从复制的方式来同步数据,在通过读写分离提升数据库的并发能力 Amoeba 变形虫 案例实施 1.所有服务器关闭firewalld或者进行规则设置 2.建立时间同步环境 在主服务器上安装ntp时间同步服务器 使用yum安装ntp服务 修改ntp.conf,设置主服务器为时间同步源 在从服务器上进行时间同步 使用yum安装ntpdate并进行时间同步 在三台数据库服务器上安装mysql 编译安装mysql 优化调整 初始化数据库 启动mysql服务并进行root用户密码设置 配置mysql master主服务器 修改/etc/my.cnf配置文件,增加服务器id,配置二进制日志选项 登录mysql服务,授权所有的从服务器复制二进制日志的权限 配置两台从服务器 修改/etc/my.cnf配置文件,增加服务器id,配置二进制日志选项 登录mysql,配置主从同步 实操 实验环境:准备5台centos 7系统的虚拟机

SQL 调优之查询调优

瘦欲@ 提交于 2020-01-10 21:11:22
sql 语句性能分析 1、看 sql 语句执行时间 2、看 sql 的执行计划 3、查看 sql 的执行中各个环节耗时时间 4、查看mysql的执行进程,处理锁表的情况,命令 show PROCESSLIST, state 为LOCKED,说明产生锁表,ID为进程id,直接执行kill ID,就可以停止这个进程; MySQL整个查询执行过程: 1、客户端同数据库服务层建立TCP连接。2、客户端向MySQL服务器发送一条查询请求。3、连接线程接收到SQL语句之后,将语句交给SQL语句解析模块进行语法分析和语义分析。4、先看查询缓存中是否有结果,如果有结果可以直接返回给客户端。5、如果查询缓存中没有结果,就需要真的查询数据库引擎层了,于是发给SQL优化器,进行查询的优化,生成相应的执行计划。6、MySQL根据执行计划,调用存储引擎的API来执行查询7、使用存储引擎查询时,先打开表,如果需要的话获取相应的锁。 查询缓存页中有没有相应的数据,如果有则可以直接返回,如果没有就要从磁盘上去读取。8、当在磁盘中找到相应的数据之后,则会加载到缓存中来,从而使得后面的查询更加高效,由于内存有限,多采用变通的LRU表来管理缓存页,保证缓存的都是经常访问的数据。9、最后,获取数据后返回给客户端,关闭连接,释放连接线程。 Procedure Analyse优化表结构 PROCEDURE ANALYSE()

MySQL忘记root密码的解决办法

ぃ、小莉子 提交于 2020-01-10 18:57:35
MySQL忘记root密码的解决办法 使用Mysql时,忘记其他用户密码,可以使用root用户重新设置,但是如果忘记root密码,就需要采用特殊的方法进行操作。 直接修改授权表可以修改root的密码。 操作步骤总结: (1) 停止MySQL的服务 (2) 使用mysqld_safe结合skip-grant-tables启动数据库,它的作用是用户登录时不适用授权表,所以用户可以不使用密码直接登录 (3) 不使用密码直接登录到MySQL,使用update修改root密码 (4) 使用kill命令杀掉MySQL的进程,然后正常启动MySQL服务 (5) 使用新密码登录测试 具体操作: 1、[root@MySQL ~]#systemctl stop mysqld 停止服务 [root@MySQL ~]#netstat -anptl | grep 3306 查看MySQL服务进程 2、跳过用户登录时使用的授权表 [root@MySQL~]# mysqld_safe --skip-grant-tables & 已跳过安全登录授权 3、安全登录后使用update修改root密码 执行update修改密码 mysql>update mysql.user set authentication_string=PASSWORD(‘123.wuqing’) where user=‘root’ and