sudo apt install -y mysql-server mysql-client
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
-- 第一次连接数据库
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;
四种?式效果?样:
exit
quit
\q
快捷键: ctrl + d
5. 密码忘记怎么办?
打开配置: vim /etc/mysql/my.cnf
添加这么?段:
[mysqld]
skip-grant-tables
如果?件中已存在 [mysqld] , 则直接将 skip-grant-tables 写到其下?即可。
修改完成后,保存退出,重启服务: sudo systemctl restart mysqld
创建账户、权限授予
GRANT ALL PRIVILEGES on *.* to ‘?户名‘@‘主机/%‘ IDENTIFIED BY "密码" WITH GRANT OPTION;
flush privileges; -- 刷新使权限?效
ALL PRIVILEGES : 授予全部权限, 也可以指定 select 、 insert 等
*.*
: 允许操作的数据库和表
WITH GRANT OPTION : 带有该?句说明允许?户将??拥有的权限授予别?
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 密码
原文:https://www.cnblogs.com/Justintime/p/13152193.html