?
?
1.安装数据库:
sudo apt install -y mysql-server mysql-client
?
?
2.开启数据库服务:
1. Ubuntu : service mysql start|stop|restart|status
2. Deepin : systemctl start|stop|restart|status mysqld
3. CentOS7 : systemctl start|stop|restart|status mysqld
4. CentOS6 : service mysqld start|stop|restart|status
?
?
3.连接数据库:
-- 第一次连接数据库
sudo mysql -h localhost -u root -p
-- 创建数据库用户之后,使用数据库用户连接
mysql -h localhost -u username -p123456 [-P3306]
-
-h : host(ip地址) localhost = 127.0.0.1
-
-u : username(数据库?户账户)
-
-p : password(密码)
-
-P : port(端?, 默认端?3306)
备注
第?次使? root 连接后最好添加?个新的?户来操作。出于安全考虑,?常开发中最好不要使? root
-- 创建新?户,并设置密码
?
-- *.* 代表该?户可以操作任何库、任何表
?
-- 主机名可以使? ‘%‘, 代表允许该?户从任何机器登陆
?
GRANT ALL PRIVILEGES on *.* to ‘?户名‘@‘localhost‘ IDENTIFIED BY "密码" WITH
?
GRANT OPTION;
?
-- 刷新使权限?效
?
flush privileges;
?
?
4.退出数据库
四种?式效果?样:
-
exit
-
quit
-
\q
-
快捷键: ctrl + d
5. 密码忘记怎么办?
-
打开配置: vim /etc/mysql/my.cnf
-
添加这么?段:
[mysqld]
skip-grant-tables
如果?件中已存在 [mysqld] , 则直接将 skip-grant-tables 写到其下?即可。
-
修改完成后,保存退出,重启服务: sudo systemctl restart mysqld
创建账户、权限管理
-
创建账户、权限授予
?8.0 之前版本
GRANT ALL PRIVILEGES on *.* to ‘?户名‘@‘主机/%‘ IDENTIFIED BY "密码" WITH GRANT OPTION;
flush privileges; -- 刷新使权限?效
ALL PRIVILEGES : 授予全部权限, 也可以指定 select 、 insert 等
*.*
: 允许操作的数据库和表
WITH GRANT OPTION : 带有该?句说明允许?户将??拥有的权限授予别?
?
?
8.0 之后版本
CREATE USER `?户名`@`主机` IDENTIFIED BY ‘密码‘; -- 创建账户
GRANT ALL ON *.* TO `?户名`@`主机` WITH GRANT OPTION; -- 授权
-
修改密码
ALTER USER ‘root‘@‘localhost‘ IDENTIFIED WITH mysql_native_password BY ‘你的密码‘;"
3.查看权限
show grants; -- 查看当前?户的权限
show grants for ‘abc‘@‘localhost‘; -- 查看?户 abc 的权限
-
回收权限
revoke delete on *.* from ‘abc‘@‘localhost‘;
5.删除?户
use mysql;
select host, user from user;
drop user ?户名@‘%‘;
-
安装mycli(mysql语句提示):pip3 install mycli
安装后,连接数据库语句:mycli -h localhost -u 数据库用户名 -p 密码