Ubuntu 20.04 安装 mysql8 LTS

Ubuntu 20.04 安装 mysql8 LTS

sudo apt-get update

sudo apt-get install mysql-server -y

mysql --version

mysql Ver 8.0.35-0ubuntu0.20.04.1 for Linux on x86_64 ((Ubuntu))

Ubuntu20.04 是自带了 MySQL8. 几版本的,低于 20.04 则默认安装是 MySQL5.7.33

systemctl status mysql.service

sudo netstat -tap | grep mysql

sudo service mysql start

sudo service mysql stop

进入MySQL,默认没有密码

以root 身份 进入 mysql shell

sudo mysql

sudo mysql -u root -p

show databases;#查看所有数据库

第一次的时候:

当前的用户和用户权限

select user from mysql.user ;

select host,user from mysql.user;

SELECT * FROM mysql.user WHERE user='root'\G

CREATE USER zhang3 IDENTIFIED BY '123123'; -- 默认host是 %

CREATE USER 'robofly'@'localhost' IDENTIFIED BY '123456';

show grants for root@'localhost';

user_name@host_name,其中host_name是主机IP地址或主机名。

1)为了能够在本地访问MySQL,使用localhost 或回路地址127.0.0.1。

2)如果使用通配符%作为主机,则允许客户端指定用户从任意主机连接。

3)主机指定为127.0.0.1时,会通过TCP/IP协议连接,并且只能在本机访问;

4)主机指定为localhost时,localhost不会被解析成IP地址,直接通过UNIXsocket连接。

4、设置root 的密码

use mysql;

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

5、刷新

flush privileges;

远程登录

sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

#使得mysql可以远程登陆

vim /etc/mysql/mysql.conf.d/mysqld.cnf

#注释掉这一行

#bind-address = 127.0.0.1

sudo service mysql restart

远程连接

创建用户并授权

(root默认密码一般为123456)

c 复制代码
mysql -u root -p
123456     //登录成功后会跳出来 mysql>
CREATE USER XXX IDENTIFIED BY 'ABC';   //XXX为用户名,'ABC'为密码,";"一定要加上
Grant all privileges on *.* to 'XXX'@'%' with grant option;  //这里的'XXX'为用户名
flush privileges;    //刷新权限
这样就完成了用户创建和授权,如果要查看用户有哪些,可以继续执行:

use mysql;     //切换至mysql数据库(root用户自带mysql数据库)
select host,user from user;    //查看用户列表
  1. 使用命令行连接远程数据库:

在命令行中输入以下命令:

mysql -h 远程主机IP地址 -u 用户名 -p 密码

其中,远程主机IP地址是指要连接的远程数据库服务器的IP地址,用户名和密码是远程数据库服务器的登录凭证。输入命令后,按回车键即可连接到远程数据库。

c 复制代码
sudo mysql -u root -p
CREATE USER 'remote_user'@'%' IDENTIFIED BY 'abc123';
GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%';
select host,user from mysql.user;
flush privileges;

远程连接

c 复制代码
mysql -h 192.168.99.40 -u remote_user -p
查看 当前用户

SELECT USER();

查看当前用户权限

如果你想查看当前用户的权限,请使用以下命令:

SHOW GRANTS FOR CURRENT_USER();

该命令将返回当前用户的所有权限。如果你想只查看当前用户拥有的特定权限,你可以使用以下命令:

4.5 当前选择的数据库

命令:

mysql> select database();

MySQL中SELECT命令类似于其他编程语言里的print或者write,你可以用它来显示一个字符串、数字、数学表达式的结果等等。如何使用MySQL中SELECT命令的特殊功能?

1.显示MYSQL的版本

mysql> select version();

11、查看表结构:describe <表名>;

12、当前所有连接的详细情况:show full processlist;(没有full,只显示前100个连接)

13、查看状态:show status like '%下面变量%';

14、看表注释,字段注释;

show create table table_name;

show full columns from table_name;

show table status;

相关推荐
毒爪的小新6 小时前
Linux 环境极速部署 vLLM:从零搭建生产级大模型推理服务
linux·人工智能·ai·语言模型·vllm
鹤落晴春6 小时前
RH124问答3:从命令行管理文件
linux·运维·服务器
凡人叶枫6 小时前
Effective C++ 条款30:透彻了解 inlining 的里里外外
linux·开发语言·c++·嵌入式开发·effective c++
guslegend7 小时前
大模型驱动大数据SRE智能运维
大数据·运维
遇见火星7 小时前
Docker Compose 完全入门:一键启动所有容器
运维·docker·容器·docker compose
Net_Walke7 小时前
【Linux系统】静态链接库与动态链接库
linux·嵌入式硬件
小啊曼7 小时前
CIO实战方法论_11_组织变革打破部门墙
运维
syc78901237 小时前
中文语境下AI编码工具实战对比:从迭代体验看日常开发选择
linux·人工智能·ubuntu
❀搜不到8 小时前
远程服务器codex使用本地cc-switch的deepseek api
运维·服务器
凡人叶枫8 小时前
Effective C++ 条款22:将成员变量声明为 private
linux·开发语言·c++