mysql8.0.13 使用笔记

不同版本会有异同,注意MySQL版本。

基本操作 mysql版本8.0.13

sudo mysql -uroot -p # 链接数据库,下一步输入密码
# 下面是mysql的命令行
show databases; # 查看所有有权限的数据库
create database firstDB; # 创建数据库
use firstDB; 
show tables; # 查看所有有权限的数据表
select database(); # 查看当前使用数据库
drop database firstDB; # 删除数据库

声明、删除、使用存储变量

-- 删除存储过程
DROP PROCEDURE IF EXISTS initData;
-- 创建存储过程
delimiter $$
CREATE PROCEDURE initData()
BEGIN
	DECLARE i INT DEFAULT 1;
	WHILE i<3 DO
		INSERT users(`name`, pass, email) VALUES(CONCAT("name", i), "xxx", CONCAT("email", i));
		SET i=i+1;
	END WHILE;
END$$
-- 恢复结束标识是分号
delimiter;
-- 使用存储过程函数
call initData();

添加字段 类型 注释

可以添加多个,逗号分隔。

ALTER TABLE users 
	ADD ( 
		`uuid` VARCHAR(255)
		 DEFAULT NULL
		 COMMENT "更改密码使用的uuid"
		 AFTER pass)

添加唯一索引:

ALTER TABLE users ADD UNIQUE INDEX(email)

Navicat链接aws的mysql 原文

  1. 安全组,添加规则。选择规则MYSQL/Aurora,端口设置为3306,tcp
  2. 取消绑定地址,允许来自外网的访问
vim /etc/mysql/mysql.conf.d/mysqld.cnf
# 找到bind-address = 127.0.0.1,注释掉
  1. 登录数据库
    目的是添加用户username并且都可以访问
GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
FLUSH PRIVILEGES;

或者更改root远程访问

USE mysql;
UPDATE user SET Host='%' where User='root';
FLUSH PRIVILEGES;
  1. 重启mysql
sudo service mysql restart

用户&&权限

-- 使用数据库 mysql
use mysql;
-- 查询用户
SELECT `Host`,`User` FROM `user`;
-- 添加用户,名字:test01;允许IP:localhost;密码:123456
CREATE USER 'test01'@'localhost' IDENTIFIED by '123456';
-- 删除用户
DROP USER 'test01'@'localhost';
-- 添加权限 当表不存在的时候可以执行
GRANT SELECT ON nodesql.* TO 'test01'@'localhost';
-- 删除权限 当表不存在的时候执行不成功
REVOKE INSERT ON nodesql.* FROM 'test01'@'localhost';
REVOKE ALL PRIVILEGES ON nodesql.* FROM 'test01'@'localhost'; -- 删除所有权限
-- 修改密码
ALTER USER 'test01'@'localhost' IDENTIFIED by '123qwe'
-- 重命名 也可以改host
RENAME USER 'test01'@'localhost' TO 'test02'@'localhost';
-- 查看权限
SHOW GRANTS;
SHOW GRANTS FOR 'test01'@'localhost';
-- GRANT USAGE ON *.* TO `test01`@`localhost`
-- GRANT SELECT ON `nodesql`.* TO `test01`@`localhost`
-- 刷新权限
FLUSH PRIVILEGES;

mysql数据库用户在创建的时候就会赋予USAGE权限,这个权限很小,几乎为0。只能连接数据库和查询information_schema的权限、可以修改自己的密码。不过这个权限也很奇怪,你无法revoke。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章