Linux 下 Mysql 的使用(Ubuntu20.04)

文章目录

    • 一、安装
    • 二、使用
      • [2.1 登录](#2.1 登录)
      • [2.2 数据库操作](#2.2 数据库操作)
        • [2.2.1 创建数据库](#2.2.1 创建数据库)
        • [2.2.2 删除数据库](#2.2.2 删除数据库)
        • [2.2.3 创建数据表](#2.2.3 创建数据表)
    • 参考文档

一、安装

Linux 下 Mysql 的安装非常简单,一个命令即可:

shell 复制代码
sudo apt install mysql-server

检查安装是否成功,输入:

shell 复制代码
mysql -V

二、使用

2.1 登录

连接服务器时,需要提供用户名和密码

shell 复制代码
# 连接远程服务器
mysql -h host -u user -p
# 在本地连接本地的Mysql
mysql -u user -p

初次登录可以使用root账户,然后在root账户中创建新用户,再使用上面的命令登录

shell 复制代码
# 登录 root 用户(密码是安装的时候让填的,如果没有填就是没有密码)
sudo mysql -u root

# 将new_user和new_password替换为要创建的新用户的用户名和密码
CREATE USER 'new_user'@'localhost' IDENTIFIED BY 'new_password';

# 这步很重要,赋予new_user用户所有权限,否则在后续操作时会提示该用户没有权限
GRANT ALL PRIVILEGES ON *.* TO 'new_user'@'localhost' WITH GRANT OPTION;

# 退出当前Mysql用户
exit

# 登录新创建的用户
$ mysql -u new_user -p

如果要查看更多的Mysql的选项列表,可以输入

shell 复制代码
mysql --help  

2.2 数据库操作

使用SHOW语句可以找出服务器上当前存在哪些数据库:

shell 复制代码
# SHOW DATABASES;或者换成小写都是可以的
mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| RUNOOB             |
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.00 sec)

2.2.1 创建数据库

在登陆 MySQL 服务后,使用 create 命令创建数据库,语法如下:

shell 复制代码
CREATE DATABASE 数据库名;
shell 复制代码
# 创建数据库
mysql> CREATE DATABASE test;
Query OK, 1 row affected (0.03 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| RUNOOB             |
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| test               |
+--------------------+
6 rows in set (0.00 sec)

USE命令用于切换当前连接的活动数据库,当连接到MySQL服务器时,默认情况下可能没有选择任何数据库。为了执行针对特定数据库的SQL查询(例如SELECT、INSERT、UPDATE、DELETE等),需要先告诉MySQL想要操作哪个数据库

shell 复制代码
USE 数据库名;

2.2.2 删除数据库

drop 命令删除数据库,命令格式:

shell 复制代码
drop database 数据库名;

2.2.3 创建数据表

创建MySQL数据表的SQL通用语法:

shell 复制代码
CREATE TABLE table_name (column_name column_type);

Mysql数据类型:https://www.runoob.com/mysql/mysql-data-types.html

shell 复制代码
# 创建一个表
mysql> create table test_table (name VARCHAR(100));
Query OK, 0 rows affected (0.14 sec)

# 查看表的情况
mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| test_table     |
+----------------+
1 row in set (0.00 sec)

# 查看表中情况
mysql> DESCRIBE test_table;
+-------+--------------+------+-----+---------+-------+
| Field | Type         | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+-------+
| name  | varchar(100) | YES  |     | NULL    |       |
+-------+--------------+------+-----+---------+-------+
1 row in set (0.01 sec)

参考文档

https://dev.mysql.com/doc/refman/8.1/en/entering-queries.html

https://www.runoob.com/mysql/mysql-connection.html

相关推荐
七歌杜金房10 小时前
我终于又有了自己的 Linux 电脑
linux·debian·mac
tntxia1 天前
linux curl命令详解_curl详解
linux
扛枪的书生2 天前
Linux 网络管理器用法速查
linux
顺风尿一寸2 天前
Java Socket 内核之旅:从 SocketChannel.read() 到 tcp_recvmsg 与 epoll 的完整调用链路
linux
XIAOHEZIcode2 天前
Ubuntu 终端美化全栈指南:Bash 到 Kitty 踩坑实录
linux·ubuntu·命令行
唐青枫2 天前
别再只会用 cron:Linux systemd Timer 定时任务实战详解
linux
AlfredZhao4 天前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
唐青枫4 天前
MySQL JSON 实战详解:从存储、查询、更新到 JSON_TABLE 与索引
sql·mysql
小满8784 天前
5.Mysql事务隔离级别与锁机制
mysql
元Y亨H5 天前
技术笔记:MySQL 字符集排序规则与大小写敏感性问题解决方案
mysql