(fnx_ULvK6pi
什么是数据库?
数据库(Database, 简称DB)
概念:
长期存放在计算机内, 有组织, 可共享的大量数据的集合, 是一个数据"仓库"
作用:
保存, 管理数据
数据库总览
关系型数据库(SQL)
MySQL, Oracle, SQL Server, SQLite, DB2
非关系型数据库(NOSQL)
Redis, MongoDB
MYSQL的安装
1.解压缩到指定文件夹
eg: D:\MySQL
在文件根目录创建data空文件夹
2.修改my.ini配置文件
eg:
[mysqld]
#设置mysql使用端口号
port=3306
#设置mysql所在目录位置
basedir= D:\\softwareAddress\\mysql\\mysql-8.0.23-winx64
#设置数据目录位置
datadir= D:\\softwareAddress\\mysql\\mysql-8.0.23-winx64\\data
#设置最大连接数
max_connections=200
#设置最大错误连接数
max_connect_errors=10
#设置字符编码类型
character-set-server=utf8mb4
#设置搜索引擎类型
default-storage-engine=INNODB
#mysql_native_password 密码加密类型
default_authentication_plugin=mysql_native_password
[mysql]
default-character-set=utf8mb4
[client]
port=3306
default-character-set=utf8mb4
3. 右击此电脑-属性-高级系统设置-环境变量
新建变量
变量名 MYSQL.HOME
变量值 D:\MySQL (MYSQL文件安装路径)
新增Path末尾行添加编辑
%MYSQL_HOME%\bin
4. win+R 输入cmd以管理员运行
>cd d: 切换到d盘目录下MYSQL的bin目录下 D:\MySQL\bin
mysqld --install mysql80 //安装服务mysql80
mysqld --initialize --console //初始化数据库(初始化数据一定要保证 data文件夹没有内容)(记住密码!!!)
net start mysql80 //启动服务
mysql -uroot -p (登录)
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456'; (结尾英文分号, 修改密码)
&
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
删除mysql包括windows服务:
1. win+R 输入cmd以管理员运行
2. net stop mysql80 (关闭服务)
2. sc delete mysql80 (删除服务)
#1.重置密码
/*
第一步:关闭Mysql服务
net stop mysql80 (net stop是windows命令,而不是mysql命令, 所以要退出mysql在windows盘下使用)
第二步:跳过Mysql密码验证
mysqld --console --skip-grant-tables --shared-memory
第三步:无密码方式进入Mysql
另开dos窗口输入mysql -uroot -p
直接回车进入数据库
第四步:将登陆密码设置为空
use mysql; (使用mysql数据表)
update user set authentication_string='' where user='root';(将密码置为空)
quit; (然后退出Mysql)
第五步:更改自己的登陆密码
1.关闭第一个cmd窗口(一定要关闭!)
2.在第二个窗口中输入代码
net stop mysql80(关闭mysql服务,虽然会显示没有开启服务,但是以防万一)
net start mysql80(再打开mysql服务)
(这里不要嫌麻烦,如果上一个mysql服务没关闭,我们依旧是无密码登陆)
cd D:\MySQL\bin
mysql -u root -p
(此处会显示输入密码,直接回车就好了,第四步我们已经将他置为空了)
#ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '自己定义的密码';/
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
(更改密码)
第六步:验证密码是否修改成功
quit(退出mysql)
mysql -u root -p
(输入新密码,再次登录)
*/
#2.设置远程登录
#https://blog.csdn.net/qq_40907977/article/details/109818170
#https://www.runoob.com/w3cnote/mysql8-error-1410-42000-you-are-not-allowed-to-create-a-user-with-grant.html
/*
1.登录MySQL
mysql -u root -p
2.选择 mysql 数据库
use mysql;
3.在 mysql 数据库的 user 表中查看当前 root 用户的相关信息
select host, user, authentication_string, plugin from user;
4.授权 root 用户的所有权限并设置远程访问
修改host
update user set host='%' where user='root';
5.再执行两次
GRANT ALL ON *.* TO 'root'@'%';
6.查看 root 用户的 host
select host, user, authentication_string, plugin from user;
7.修改加密规则
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;
8.修改密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password';
9.刷新权限
FLUSH PRIVILEGES;
10.防火墙开启3306端口号
*/
#3.免密登录
#https://blog.csdn.net/weixin_46178148/article/details/108846150
#1.net stop mysql
#2.mysqld --console --skip-grant-tables --shared-memory
#3.再打开一个新的cmd,输入mysql回车直接运行