mysql update语句

Mysql数据库基础

本小妞迷上赌 提交于 2019-12-25 03:28:26
初识数据库 为什么要用数据库: 第一,将文件和程序存在一起上是很不合理的. 第二,操作文件是一件很麻烦的事情. 数据库的优势: 1.程序稳定性:这样任意一台服务所在的机器崩溃了都不会影响数据和另外的服务. 2.数据一致性:所有的数据都存储在一起,所有的程序的数据都是统一的,就不会出现数据不一致的现象 3.并发:数据库可以良好的支持并发,所有的程序操作数据库都是通过网络,而数据库本身支持并发的网络操作,不需要我们自己写socket 4.效率:使用数据库对数据进行增删改查的效率要高出我们自己处理文件很多 数据库的优势 初识Mysql mysql:   MySQL是一个 关系型数据库管理系统 ,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的 关系型数据库管理系统 之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。   MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。   MySQL所使用的 SQL 语言是用于访问 数据库 的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是

MySQL自增锁

断了今生、忘了曾经 提交于 2019-12-25 03:15:25
最近在工作中遇到很多使用MySQL自带的autoincrement函数作为发号器,在实际使用中当并发比较小的时候还没有问题,一旦并发增加就会出现很多问题,特此进行如下总结。 一、自增配置 通过如下建表语句就可以完成自增的配置 CREATE TABLE `test_inc` ( `id` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; 二、修改自增大小 通过如下sql可以自动生成数字: insert into test_inc values(); 当增加3行后表中数据如下: +----+ | id | +----+ | 1 | | 2 | | 3 | +----+ CREATE TABLE `test_inc` ( `id` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8; 使用 alter table test_inc auto_increment=10;将自增修改成10后再次插入的数据为10. +----+ | id | +----+ | 1 | | 2 | | 3 | | 10 | |

MySql 和Server Sql的差异

雨燕双飞 提交于 2019-12-25 03:11:21
MySql 和 Server Sql 的差异 1 、自增长列的插入: SQLServer 中可以不为自动增长列插入值, MySQL 中需要为自动增长列插入值。 2 、获取当前时间函数 : SQLServer 写法: getdate() MySQL 写法: now() 3 、从数据库定位到表。 Sqlserver 写法:库名 .dbo. 表名 ;或者:库名 .. 表名 (注:中间使用两个点) select password from Info.dbo.users where userName='boss' 或者 select password from Info..users where userName='boss' mysql 写法:库名 . 表名 select password from Info.users where userName='boss' 4 、判断是否存在某个数据库,若存在,则删除 Sqlserver 写法: IF DB_ID('users') IS NOT NULL DROP DATABASE users Mysql 写法: Drop DATABASEif exists users 拓展:若 sqlserver 数据库正在使用中,删除之前,先要把数据库变成 “ 单一用户 ” ,再删除 ALTER DATABASE users SET SINGLE_USER

linux 下 mysql 常用命令

谁说胖子不能爱 提交于 2019-12-24 23:37:37
1.开启和关闭 1.1.开启   service mysql start 1.2.关闭   service mysql stop 1.3.重启   service mysql restart 2.登录 2.1.密码明文   语法:mysql -u用户名 -p用户密码   举例:mysql -uroot -p123456 2.2.密码密文   语法:mysql -u用户名 -p+回车,然后输入密码   举例:mysql -uroot -p      3.修改密码 3.1.SET PASSWORD命令(需登录)   语法:mysql> set password for 用户名@localhost = password('新密码');   举例:mysql>set password for root@localhost = password('123456'); 3.2.使用sql语句更新 mysql 库中的 user 表(需登录)   mysql> use mysql;   mysql> update user set password=password('123') where user='root' and host='localhost';   mysql> flush privileges; 3.3.mysqladmin命令,明文(不需登录)   语法:mysqladmin

查找Mysql慢查询Sql语句

流过昼夜 提交于 2019-12-24 23:36:26
一、MySQL数据库有几个配置选项可以帮助我们及时捕获低效SQL语句 1,slow_query_log 这个参数设置为ON,可以捕获执行时间超过一定数值的SQL语句。 2,long_query_time 当SQL语句执行时间超过此数值时,就会被记录到日志中,建议设置为1或者更短。 3,slow_query_log_file 记录日志的文件名。 4,log_queries_not_using_indexes 这个参数设置为ON,可以捕获到所有未使用索引的SQL语句,尽管这个SQL语句有可能执行得挺快。 二、检测mysql中sql语句的效率的方法 1、通过查询日志 (1)、Windows下开启MySQL慢查询 MySQL在Windows系统中的配置文件一般是是my.ini找到[mysqld]下面加上 代码如下 log-slow-queries = F:/MySQL/log/mysqlslowquery。log long_query_time = 2 (2)、Linux下启用MySQL慢查询 MySQL在Windows系统中的配置文件一般是是my.cnf找到[mysqld]下面加上 代码如下 log-slow-queries=/data/mysqldata/slowquery。log long_query_time=2 说明 log-slow-queries = F:/MySQL/log

mysql常用命令

徘徊边缘 提交于 2019-12-24 18:22:11
一、连接MYSQL。 格式: mysql -h主机地址 -u用户名 -p用户密码 1、连接到本机上的MYSQL。 # mysql -u root -p 回车后提示你输密码,注意用户名前可以有空格也可以没有空格,但是密码前必须没有空格,否则让你重新输入密码。 如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是: mysql> 2、连接到远程主机上的MYSQL。假设远程主机的IP为:192.168.2.2,用户名为root,密码为123456。则键入以下命令: # mysql -h192.168.2.2 -uroot -p123456 3、退出MYSQL命令: # exit (回车) 二、修改密码。 格式:mysqladmin -u用户名 -p旧密码 password 新密码 1、给root加个密码123456。键入以下命令: # mysqladmin -u root -password 123456 2、再将root的密码改为56789。 # mysqladmin -u root -p123456 password 56789 三、增加新用户。 格式:grant select on 数据库.* to 用户名@登录主机 identified by “密码” 1、增加一个用户test1密码为abc,让他可以在任何主机上登录

mysql常用基本操作

岁酱吖の 提交于 2019-12-24 16:46:02
#查看数据库show databases;#选择数据库use <dbname>;#删除数据库 drop database <dbname>;#查看数据表show tables;#表的创建create table <tablename>( name varchar(255),age int(4),sex varchar(255));#向表中插入数据insert into <tablename>(name,age,sex) values('stf',4,'男');#增加字段alter table <tablename> add score varchar(255);#指定某列后插入字段alter table <tablename> add class varchar(255) after name;#修改表名alter table <tablename> rename <newtablename>;#删除表drop table <tablename>;#条件判断delete from <tablename> where name='stf';#更新数据update <tablename> set name='stf01' where name='stf';#数据排序select * from <tablename> order by <字段名>; 升序select * from

MySQL注入总结

China☆狼群 提交于 2019-12-24 13:25:49
0x00 mysql一般注入(select) 1.注释符 # /* -- 2.过滤空格注入 使用/**/或()或+代替空格 %0c = form feed, new page %09 = horizontal tab %0d = carriage return %0a = line feed, new line 3.多条数据显示 concat() group_concat() concat_ws() 4.相关函数 system_user() 系统用户名 user() 用户名 current_user 当前用户名 session_user()连接数据库的用户名 database() 数据库名 version() MYSQL数据库版本 load_file() MYSQL读取本地文件的函数 @@datadir 读取数据库路径 @@basedir MYSQL 安装路径 @@version_compile_os 操作系统 Windows Server 2003 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; 5.mysql一般注入语句 猜字段数 order by n/* 查看mysql基本信息 and 1=2 union select 1,2,3,concat_ws

mysql注入总结

你。 提交于 2019-12-24 13:25:28
目录: 0x00 mysql一般注入(select) 0x01 mysql一般注入(insert、update) 0x02 mysql报错注入 0x03 mysql一般盲注 0x04 mysql时间盲注 0x05 mysql其他注入技巧 0x06 mysql数据库版本特性 0x07 声明 正文: 0x00 mysql一般注入(select) 1.注释符 # /* — 2.过滤空格注入 使用/**/或()或+代替空格 %0c = form feed, new page %09 = horizontal tab %0d = carriage return %0a = line feed, new line 3.多条数据显示 concat() group_concat() concat_ws() 4.相关函数 system_user() 系统用户名 user() 用户名 current_user 当前用户名 session_user()连接数据库的用户名 database() 数据库名 version() MYSQL数据库版本 load_file() MYSQL读取本地文件的函数 @@datadir 读取数据库路径 @@basedir MYSQL 安装路径 @@version_compile_os 操作系统 Windows Server 2003 GRANT ALL PRIVILEGES

mysql学习笔记

。_饼干妹妹 提交于 2019-12-24 12:04:00
1、mysql初始没有密码,需要设置一个密码,设置方法: mysqladmin -uroot password "xxxxx" 2、使用VARCHAR(5) 和VARCHAR(200) 存储’hello’的空间开销是一样的。那么使用更短的列有什么优势吗? 事实证明有很大的优势。更大的列会消耗更多的内存,因为MySQL 通常会分配固定大小的内存块来保存内部值。尤其是使用内存临时表进行排序或操作时会特别糟糕。在利用磁盘临时表 进行排序时也同样糟糕。 所以最好的策略是只分配真正需要的空间。 3、show PROCESSLIST 查进程 4、创建用户,并给用户附加数据操作权限其中127.0.0.1可以根据实际情况修改比如某个ip段,如果本机要登录必须配置127.0.0.1或者localhost地址如下 CREATE USER 'dog'@'127.0.0.1' IDENTIFIED BY '123456'; #创建用户 GRANT ALL ON honor_m.* TO 'dog'@'127.0.0.1'; #授权用户访问honor_m.*库下面的所有权限 5.MySQL创建只读账号 > GRANT SElECT ON *.* TO 'reader'@'%' IDENTIFIED BY "passwd"; > flush privileges; mysql 5.7修改密码 update