mysql相关

7 篇文章 0 订阅

一、mysql常用的语句

1、创建数据库

语法:create database 数据库名;

2、创建表

create table 表名(字段1 类型,字段2 类型...),如 create table user(name varchar(25),password varchar(25))

3、创建表时,指定某个字段为自增用AUTO_INCREMENT,如

create table getUserInfoCase(id int auto_increment primary key,userAtDomain varchar(100), BodyStr varchar(255), isDelete char(2),expected varchar(255));

那么id将会从1开始自增

设置从N开始自增

create table getUserInfoCase(id int auto_increment primary key,userAtDomain varchar(100), BodyStr varchar(255), isDelete char(2),expected varchar(255))  AUTO_INCREMENT = 100;

id从100开始自增

4、往表中增加字段

ALTER TABLE table_name ADD field_name field_type;  如alter table user add column birthday datetime,往user表增加birthday字段

5、更改表字段类型

alter table user modify name nchar(50);

6、查看表结构:

desc 表名

7、往数据库中插入数据

语法:insert into 表名(字段1,字段2..) values(字段1的值,字段2的值..) 或者insert into 表名 values(字段1的值,字段2的值..所有表的字段)

1)数据表中Id为自增:

如存在表table(id,name,password),其中Id为自增。在写数据库时只需设置name和password的值。如:insert into table(name,pasword) values ("张三","123");

2)插入的数据存在"、\等字符,需使用"\"进行转义。如需写入name的值为  dsldks\sfjls dl” ,可写成insert into table(name,pasword) values (" dsldks\\sfjls dl\”","123");

8、更新数据表中的记录

语法:update 表名 set 字段名='字段值' where 条件,如

update user set password='456' where name='user1' ,更新数据表user中姓名为user1的密码为456

9、在sql语句后加 \G  作用是将查到的结构旋转90度变成纵向

例如;select * from  xxx where instance_id='or201803270005'\G;

10、赋予权限:

使用grant all privileges on来更改用户对应某些库的远程权限

语法模板

grant all privileges on 库名.表名 to '用户名'@'IP地址' identified by '密码' with grant option;
flush privileges;
如:

grant all privileges on *.* to 'user'@'192.168.20153' identified by '123456' with grant option;

若允许所有ip,则将ip地址改成%,如:grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;

11、查看mysql某字段是否有索引

可以使用SHOW INDEX FROM table_name来查看表的索引,查询结果中

key_name为索引名,Column_name为列名

12、删除表字段

删除表的字段    alter table 表名 drop column 字段名,如alter table cm_user_info drop column bind_email;

13、删除某条记录 :

delete from 表名 where 条件 ,如delete from user where name='user3' ,删除user 表中name='user3'的记录

14、删除数据库 

drop database 数据库名   删除数据库

drop database if exists 数据库名 //if exists 判断数据库是否存在,不存在也不报错

15、仅除去表内的数据,但并不删除表本身

TRUNCATE TABLE 表名称

16、在navicat下注释和取消注释sql语句

navicat 注释sql语句快捷键
1、选中要注释sql
2、ctrl+/
取消:
1、选中要取消注释sql
2、ctrl+shift+/

17、查看数据库支持和默认使用的引擎

show engines;

18、查看当前数据库表使用的引擎类型

show  create table 表名;#可以看到数据库表使用的引擎,也可以看到创建数据库表的sql语句


 

二、linux下查看mysql版本

1、在终端先执行

mysql -V

mysql --help|grep Distrib

2、在mysql里查看

select version()

status

三、linux下安装mysql

1、centos 7安装Mysql 5.7

http://blog.sina.com.cn/s/blog_a5191a440102wk6k.html

下载地址

https://dev.mysql.com/downloads/mysql/5.7.html

2、centos 6安装Mysql 5.6

https://blog.csdn.net/superchanon/article/details/8546254/  

参考其中的rpm安装方式

 

四、linux下dump mysql数据库

  

五、错误:Packet for query is too large (1706 > 1024). You can change this value on the server by setting the max_allowed_packet' variable. 

解决方法: 1、接数据库服务器,登录 mysql, 执行命令 :  show variables like '%max_allowed_packate%'  即可查看这个系统参数目前的值 2、在 Linux 中,MySQL 对应的配置文件是 my.cnf , 我们在Linux终端输入如下命令 : 
mysql --help | grep my.cnf
可以查看 MySQL 所使用的 my.cnf 列表(优先级列表,先找到的配置文件生效),MySQL 会逐个目录寻找这个文件,直到找到为止!
我们逐个目录找到我们系统 MySQL 所使用的 my.cnf 配置文件,找到对应的配置项,修改为 100M 即可。

注意: MySQL 配置文件分为几个段 (Section), 包括 [mysql], [mysqld], [mysqldump] 等, 我们需要在 [mysqld] 段下添加配置项 : max_allowed_packet    = 100M

参考

https://blog.csdn.net/chengyuc/article/details/77094775  Linux查看MySQL版本的四种方法

http://jingyan.baidu.com/article/2d5afd69c4fca685a3e28e49.html 如何解决 MySQL max_allowed_packet 错误

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值