mysqladmin --version || 查看mysql版本
service mysql status #查看mysql的运行状态
service mysql start #运行mysql server
service mysql stop #停止运行
service mysql restart #重启
Windows下安装mysql
windows下查看网络服务
services.msc
在orcle官网下直接下载压缩包,然后解压到当地文件夹下
在文件夹中添加一个my.ini的文件,文件内容如下
[client]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=C:\\web\\mysql-8.0.11
# 设置 mysql数据库的数据的存放目录,MySQL 8+ 不需要以下配置,系统自己生成即可,否则有可能报错
# datadir=C:\\web\\sqldata
# 允许最大连接数
max_connections=20
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
使用管理员身份运行cmd
在文件的安装目录下执行如下命令:
D:\mysql-5.7.12-win32\bin>mysqld --initialize --console
2022-09-26T09:43:05.224423Z 0 [System] [MY-013169] [Server] D:\mysql-5.7.12-win32\bin\mysqld.exe (mysqld 8.0.30) initializing of server in progress as process 12120
2022-09-26T09:43:05.268738Z 0 [ERROR] [MY-010340] [Server] Error message file 'D:\mysql-5.7.12-win32\share\english\errmsg.sys' had only 1073 error messages, but it should contain at least 5683 error messages. Check that the above file is the right version for this program!
2022-09-26T09:43:05.298259Z 0 [Warning] [MY-013242] [Server] --character-set-server: 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous.
2022-09-26T09:43:05.475520Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2022-09-26T09:43:14.511103Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2022-09-26T09:43:19.245247Z 0 [Warning] [MY-013829] [Server] Missing data directory for ICU regular expressions: D:\mysql-5.7.12-win32\lib\private\.
2022-09-26T09:43:20.615356Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: jwlVhd9eD7=R
jwlVhd9eD7=就是mysql 的密码
执行mysqld install 安装数据库
D:\mysql-5.7.12-win32\bin>mysqld install
Service successfully installed.
更改密码
使用初始密码进入数据库之后执行以下命令:
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'
更改的新密码为“123456”
更改密码之后还要配置环境变量
设置mysql的远程登陆
#首先我们需要让任何用户都可登录root用户
1. 更新域属性,升级root为% #"%"表示任意用户
update user set host=“%” where user = "root"
#执行以上语句之后在执行
flush privileges;
#在执行授权语句
grant all privilege on *.* to 'root'@'%' with grant option;
启动数据库
D:\mysql-5.7.12-win32\bin>net start mysql
MySQL 服务正在启动 ....
MySQL 服务已经启动成功。
创建\删除数据库
连接数据库成功之后就可以通过“ show databases;” 查看当前用户下 的所有数据库
create database "数据库名"; #创建新的数据库
drop database "数据库名"; #删除数据库
通过以上命令创建\删除数据库。
mysql数据类型
mysql支持多种类型的数据库,大致分为三类
- 数值
- 日期
- 字符
创建数据表
创建数据表需要以下信息:
- 表名
- 表字段名
- 定义每个表字段
创建数据表的通用语法
create table table_name(column_name column_type);
删除数据表
drop table table_name;
插入数据
insert into "目标数据表"(表属性(使用逗号隔开))value(表属性对应的值);
//
insert into table_name(field1,field2,...,field3)
values
(value1,value2,...,value3);
查询数据
select 要查询的field from 目标表(可以是多个)[where ...] [limit n][offset m]
where :后面可以加上诸多限制条件,中间用and或者or隔开,这些条件可以使得筛选更加精确
limit:限制筛选返回的的记录个数
offset:指定select开始查询的数据偏移量
where 子句
SELECT field1, field2,...fieldN FROM table_name1, table_name2...
[WHERE condition1 [AND [OR]] condition2.....
- 查询语句中你可以使用一个或者多个表,表之间使用逗号**,** 分割,并使用WHERE语句来设定查询条件。
- 你可以在 WHERE 子句中指定任何条件。
- 你可以使用 AND 或者 OR 指定一个或多个条件。
- WHERE 子句也可以运用于 SQL 的 DELETE 或者 UPDATE 命令。
- WHERE 子句类似于程序语言中的 if 条件,根据 MySQL 表中的字段值来读取指定的数据。
binary关键字:where子句的比较是不区分字符大小的,可以使用binary来设定where子句字符串的比较是区分大小的。
mysql> SELECT * from runoob_tbl WHERE BINARY runoob_author='runoob.com';
mysql> SELECT * from runoob_tbl WHERE BINARY runoob_author='RUNOOB.COM';
更新数据
UPDATE table_name SET field1=new-value1, field2=new-value2
[WHERE Clause]
删除数据
DELETE FROM table_name [WHERE Clause]
如果不指定where,表中的所有记录都将被删除。