mysql数据库

mysql基本命令

隐身守侯 提交于 2020-03-11 10:10:00
文章目录 连接数据库 mysql -u root -p 密码 查看有哪些数据库 show databases; 使用该数据库 use 数据库名; 查看使用的数据库中有哪些表 show tables; 查看标详情 describe 表名 退出 mysql exit; 来源: CSDN 作者: abcnull 链接: https://blog.csdn.net/abcnull/article/details/104786958

Visual Studio 2019 C++ 连接 MySQL 8.0.18 方法

老子叫甜甜 提交于 2020-03-11 09:58:43
由于MySQL 8.0.18登录的加密方式导致Visual Studio 2019 C++连接MySQL 8.0.18 失败,所以要在MySQL数据库中执行下面的语句。 1.ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'tpassword'; 2.建立新的C++项目,在解决方案右键菜单中选择[属性] 3.需要在两个位置增加MySQL的关联 4.然后再代码中加入必要的头文件引用及对应声明 #include <mysql.h> #pragma comment(lib,"wsock32.lib") #pragma comment(lib,"libmysql.lib") int main() { std::cout << "Hello World!\n"; //Link Mysql MYSQL* conn; MYSQL_RES* res; MYSQL_ROW row; const char* server = "localhost"; const char* user = "root"; const char* password = "Password"; // got tot keep my data secret const char* database = "Database";

DBeaver 执行 mysql 多条语句报错

空扰寡人 提交于 2020-03-11 09:16:02
想直接导入别人的建表和插入数据操作 和 ORACLE 一样 使用 CTRL+ENTER 的快捷键操作 数据库报错,信息如下 SQL 错误 [1064] [42000]: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INSERT INTO emp_contact VALUES (1, '010-61231111', NULL, NULL, NULL); INSERT IN' at line 9 网上搜了一波 参考链接 https://www.cnblogs.com/hgxbo/p/5388279.html 然后在DBeaver的 连接设置中 驱动属性 中 allowMultiQueries 从 默认的false 改为true 截图如下 再次执行 CTRL+ENTER 多条语句正确执行 来源: https://www.cnblogs.com/aunrea/p/12460274.html

Python-常见面试题

杀马特。学长 韩版系。学妹 提交于 2020-03-11 08:59:59
什么是Python Python是一种解释型语言,也就是说,它和C语言以及C的衍生语言不通,Python代码在运行之前不需要编译 Python是一种动态类型语言,指的是,你在声明变量时不需要指定变量的类型 Python让困难的事变的容易,因此程序员可以专注于算法和数据结构的设计,而不用处理底层的细节 Python用途非常广泛–网络应用,自动化,科学建模,大数据应用等等,它也常被用作“胶水语言”,用于帮助其他语言和组件改善运行状况 Python支持的数据类型 数字、字符串、元组、字典、列表 下划线的作用 _xxx:表示的是protected类型,即只允许其本身和子类进行访问 __xxx:表示的是private类型 __xxx__:表示的特列方式,如__init__ 如何生成一个不可变集合 使用 frozenset 函数,将一个列表变成一个不可变的集合,如下: s = frozenset([1, 2, 3]) is与== is对比地址,==是对比值 多线程与多进程 对比维度 多进程 多线程 数据共享、同步 数据共享复杂,需要用到IPC;数据是分开的、同步简单 因为共享进程数据,所以共享简单,但也因为这个导致同步复杂 内存、CPU 占用内存多,切换复杂,CPU利用率低 占用内存小,切换简单,CPU利用率高 创建、销毁、切换 创建销毁、切换复杂,速度很慢 创建销毁、切换简单,速度很快 编程

MySQL 5.6添加审计功能

一个人想着一个人 提交于 2020-03-11 05:03:22
由于MySQL的社区版是不支持审计系统的,因为通过第三方的插件实现审计功能。来自McAfee的MySQL插件,为MySQL提供审计功能,重点是安全性和审计要求。该插件可以用作独立的审核解决方案,也可以配置为将数据提供给外部监视工具。 插件下载地址: https://bintray.com/mcafee/mysql-audit-plugin/release/1.1.7-805#files 针对自己的系统和MySQL版本下载对应的插件。由于我的MySQL是5.6版本,linux系统是64位,因此下载版本为:audit-plugin-mysql-5.6-1.1.7-805-linux-x86_64 安装audit-plugin 1.查看MySQL插件目录 MySQL [(none)]> show global variables like 'plugin_dir'; +---------------+-------------------------------+ | Variable_name | Value | +---------------+-------------------------------+ | plugin_dir | /data/tools/mysql/lib/plugin/ | +---------------+------------------------

debian mysql5.5升级到5.7注意事项

[亡魂溺海] 提交于 2020-03-11 04:12:30
注意事项:升级前需要做好数据库备份!! 升级步骤: 1:dpkg -i mysql-apt-config_0.8.9-1_all.deb (选择5.7版本) 2:apt-get update(如果报错,The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY DCF9F87B6DFBCBAE。则执行apt-key adv --recv-keys --keyserver keyserver.ubuntu.com DCF9F87B6DFBCBAE) 3:apt-get install mysql-client mysql-server 可能遇到的问题:mysql-sever fails depends mysql-communit-server is going to but not installed(出现这个错误尝试了很多都没成功)。此时可能需要卸载mysql后(该操作会导致数据库数据被清除,请谨慎操作),再进行上面的操作。 4:mysql升级完成后,需检查服务器的各服务是否正常(编译、重启是否ok) mysql卸载: 1:apt list --installed | grep mysql 2:apt-get --purge mysql

Mysql的可视化工具MysqlWorkbench

邮差的信 提交于 2020-03-11 03:16:31
上期有同学问道,我实际开发中需要编辑较长的sql语句,那什么工具适合呢,本人认为 MysqlWorkbench ,也可以简称为Workbench 1,是安装的方式 : 方法一: 在下载mysql8的时候,插件里面包含workbench,方法二: 直接下载workbench,亲测需要下载汇编等语言,相对来说比较麻烦,所以先直接现在mysql然后再选择其插件即可 2,实用而又很少人知道的使用方式, 图中的三个按钮显示不同的格式,亲测试一试 3,可以快速生成sql语句,不管是新增,还是更新,方便正式得运维人员快速执行脚本呢 4,很多同学面临这个问题,再复制得时候,发现字符串长度过长,复制根本不全,那我们该怎么做呢,很简单,其实就是 切换ResultGrid为FormGrid,也就是表单网格 5,缺点: 就是我们在查找一个数据库表得时候,发现基本查询 不到,搜索很不方便,这时候建议使用sqlyog,这里不建议使用navicat,因为会导致数据泄露 关注博客,出示更多实用得知识点 来源: CSDN 作者: 技术引领者 链接: https://blog.csdn.net/qq_37022150/article/details/104746495

zabbix3.4.6监控系统搭建

前提是你 提交于 2020-03-11 01:33:34
作者:Mr大表哥 来源: https://blog.51cto.com/zpf666/2068934 一.准备工作 系统版本号:cat /etc/redhat-release OS:centos7.6 Zabbix version:3.4.6(2018/1/15日上线的新版本) Database:MariaDB 关闭防火墙:systemctl stop firewalld 防火墙开机不自启:systemctl disable firewalld 关闭selinux: 临时:setenforce 0 永久:sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config 一切准备好后,重启系统! 二.先安装MariaDB数据库 1.概述: MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。 开发这个分支的原因是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。 2.yum安装MariaDB yum -y install mariadb-server mariadb 3.启动和开机自启数据库 systemctl start

MySQL优化(2):存储引擎和锁

好久不见. 提交于 2020-03-11 00:45:01
存储引擎: 早期的时候,存在如何选择MyISAM和Innodb? 现在,Innodb不断地发展完善,成为了主流的存储引擎。 因此5.5之后的mysql,无脑选择Innodb即可。 MYSQL中的数据,索引以及其他的对象,是如何存储的,是一套文件系统的实现。 MYSQL支持很多的存储引擎,使用 SHOW ENGINES 即可查到全部的引擎 MyISAM和Innodb的比较: 1.存储文件的角度:MyISAM数据和索引分别存储,数据是.myd,索引是.myi;Innodb数据和索引集中存储为.ibd,不支持文件级别的移动 2.记录存储顺序的角度:MyISAM顺序存储,直接在表末尾插入记录;Innodb主键顺序存储,插入时需要排序操作,稍影响了效率 3.空间碎片的角度:MyISAM会产生;Innodb不会产生;空间碎片就删除了以前的记录,MyISAM将会空余下来一些空间 通俗来讲,就说原来存储文件100K,我删除了一部分记录后还是100K 优化MyISAM的空间碎片: OPTIMIZE TABLE XXX; 4.外键和事务的角度:MyISAM不支持;Innodb支持,保证数据的完整性 5.全文索引的角度:MyISAM不支持;Innodb新版本支持,但是不支持中文,所以很鸡肋 6.锁的角度:MyISAM表级锁定;Innodb行级锁定,表级锁定,处理并发能力更强 总结:没有特殊需求

Python 获取MySql某个表所有字段名

无人久伴 提交于 2020-03-10 20:56:00
在使用python导出数据库中数据的时候,往往除了插入的数据以外,还有表字段等信息需要导出,查阅了资料后发现了2种方法 第一种:在mysql自带的表里查询,这个表保存了每张表的字段信息,可以用pymysql执行下面的sql语句 import pymysql conn = pymysql.connect(host="127.0.0.1",user="root",password="123456",db="study",autocommit=True) cur = conn.cursor() sql = "select COLUMN_NAME from information_schema.COLUMNS where table_name = 'userinfo'" cur.execute(sql) for field in cur.fetchall(): print(field[0]) cur.close() conn.close() 第二种:使用pymysql自带的方法获取 import pymysql conn = pymysql.connect(host="127.0.0.1",user="root",password="123456",db="study",autocommit=True) cur = conn.cursor() sql = "select * from