mysql-5.7.25安装及常用语法

我下的是免安装版的压缩文件包,可以选择下载.msi的程序包,那样就可以通过常见的图形界面来进行安装配置了

参考链接:https://blog.csdn.net/qq_23994787/article/details/80648731

注意:

1)需要把自己创建的my.ini文件复制到bin文件夹内

2)5.7需要在安装完成后初始化data目录

D:mysql-5.7.25in
λ mysqld --initialize-insecure

  初始化后可使用 net start mysql 启动服务

使用:

  启动MySQL:(必须在管理员下运行命令行)

net start mysql

  关闭mysql

net stop mysql

  登录到数据库(注意启动服务和登录到数据库是两个不同的操作)当 MySQL 服务已经运行时, 我们可以通过 MySQL 自带的客户端工具登录到 MySQL 数据库中, 首先打开命令提示符, 输入以下格式的命名:

mysql -h 主机名 -u用户名 -p
#-h : 指定客户端所要登录的 MySQL 主机名, 登录本机(localhost 或 127.0.0.1)该参数可以省略;
#-p 告诉服务器使用密码模式登录
mysql -u root -p

  启动成功后命令提示符会一直以 mysq> 加一个闪烁的光标等待命令的输入, 输入 exit 或 quit 退出登录

  

  启动和关闭mysql服务器

D:mysql-5.7.25in
λ mysqld --console    #启动
λ mysqladmin -uroot shutdown    #关闭

  更多信息参考:http://www.runoob.com/mysql/mysql-administration.html

   

查看数据库相关信息:

  更多信息:https://www.cnblogs.com/jiangxiaobo/p/6110647.html

  或者:https://blog.csdn.net/qfire/article/details/78942856

  显示所有数据库:

show databases;

  查看当前使用数据库

select database();

  查看数据库使用端口

show variables like "port";

 

使用数据库 

  新建数据库

mysql> create database test;#新建名为test的数据库
Query OK, 1 row affected (0.09 sec)

   删除数据库

DROP TABLE table_name ;

  

  选择数据库

  更多方法:https://www.cnblogs.com/zhuyongzhe/p/7686098.html

use awesome;#使用数据库awesome

  

  新建表

mysql> create table 表名 (column1 varchar(20),column2 varchar(20),column3 varchar(10));

  

  查看数据库中所有表

mysql> select table_name from information_schema.tables where table_schema='awesome';#数据库名为awesome,另外这里的schema是模式的意思,我对table_schema的理解是这个表的模式、表的模板(有些不准确)就是数据库了。
+------------+
| table_name |
+------------+
| blogs      |
| comments   |
| users      |
+------------+
3 rows in set (0.01 sec)

  

  查看表的结构

mysql> desc blogs;
+------------+--------------+------+-----+---------+-------+
| Field      | Type         | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+-------+
| id         | varchar(50)  | NO   | PRI | NULL    |       |
| user_id    | varchar(50)  | NO   |     | NULL    |       |
| user_name  | varchar(50)  | NO   |     | NULL    |       |
| user_image | varchar(500) | NO   |     | NULL    |       |
| name       | varchar(50)  | NO   |     | NULL    |       |
| summary    | varchar(200) | NO   |     | NULL    |       |
| content    | mediumtext   | NO   |     | NULL    |       |
| created_at | double       | NO   | MUL | NULL    |       |
+------------+--------------+------+-----+---------+-------+
8 rows in set (0.00 sec)

  修改某列是否允许为空

mysql> alter table 表名 modify column2 varchar(20) not null;#要带上字段类型,alter不要写错(alert路过)

  

  修改默认值

mysql> alter table table1 alert column column1 set default 2;#设置默认值为2 注意:已有默认值会出错,需要先删除
ERROR 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 'alert column column1 set default 2' at line 1
mysql> alter table table2 alter column column1 drop default;

  

  插入数据:

参考链接:http://www.runoob.com/mysql/mysql-insert-query.html

#指定列名
mysql> INSERT INTO runoob_tbl 
    -> (runoob_title, runoob_author, submission_date)
    -> VALUES
    -> ("学习 PHP", "菜鸟教程", NOW());
#向全部列插入时可以省略列名:
mysql> insert into users
    -> values
    -> ('005','190184155@qq.com','0000','0','起个名字','222334','1994')
    -> ;

  

  查询数据

参考链接:http://www.runoob.com/mysql/mysql-select-query.html

mysql> select * from users
    -> ;
+-----+------------------+--------+-------+----------+--------+------------+
| id  | email            | passwd | admin | name     | image  | created_at |
+-----+------------------+--------+-------+----------+--------+------------+
| 005 | 190184155@qq.com | 0000   |     0 | 起个名字 | 222334 |       1994 |
+-----+------------------+--------+-------+----------+--------+------------+
1 row in set (0.01 sec)

  若查询数据提示表不存在

mysql> select * from blogs;
ERROR 1146 (42S02): Table 'test.blogs' doesn't exist
#这种通常情况下都是use这个表存在的数据库
#还可以这样
 select * from awesome.blogs;#加上这个表所属的数据库名就行,不用use

  

  查询为空的数据

mysql> select * from table1 where column2 is null;#使用is null 
mysql> select * from table1 where column2='';#这样不可以
mysql> select * from table1 where column2='NULL';

  

  修改数据

参考数据:http://www.runoob.com/mysql/mysql-update-query.html

mysql-> UPDATE 表名 SET 字段名1='a',字段名2='b' WHERE 字段名3='c';
mysql-> update users set admin='1' where email='11111@qq.com';#不要忘记set关键字 Query OK, 1 row affected (0.09 sec) Rows matched: 1 Changed: 1 Warnings: 0

出现的错误:

1)Install/Remove of the Service Denied!

是因为没有使用管理员打开cmd原因造成的

2)使用net start mysql 时发生系统错误5拒绝访问

还是因为没有使用管理员运行cmd引起的

3)运行mysql --console(启动服务器)总是会失去响应,就像睡着了一样

不过可以选择kill all but shell来终止

解决了,必须先启动mysql才能运行这条命令

原文地址:https://www.cnblogs.com/Gaoqiking/p/10634851.html