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

相关推荐
飞翔的佩奇7 分钟前
Java项目:基于SSM框架实现的忘忧小区物业管理系统【ssm+B/S架构+源码+数据库+毕业论文+开题报告】
java·数据库·mysql·vue·毕业设计·ssm框架·小区物业管理系统
寻月隐君15 分钟前
保姆级教程:Zsh + Oh My Zsh 终极配置,让你的 Ubuntu 终端效率倍增
linux·后端·命令行
XM-545817 分钟前
2025微信小程序wxapkg解包全攻略
linux·运维·小程序
@Ryan Ding18 分钟前
MySQL主从复制与读写分离概述
android·mysql·adb
朗晴1 小时前
文本编辑器VIM的使用方法!
linux·运维·服务器
feifeigo1237 小时前
升级到MySQL 8.4,MySQL启动报错:io_setup() failed with EAGAIN
数据库·mysql·adb
2401_826097629 小时前
JavaEE-Linux环境部署
java·linux·java-ee
(:满天星:)10 小时前
第31篇:块设备与字符设备管理深度解析(基于OpenEuler 24.03)
linux·运维·服务器·网络·centos
爱莉希雅&&&10 小时前
shell编程之awk命令详解
linux·服务器·git
笑稀了的野生俊10 小时前
在服务器中下载 HuggingFace 模型:终极指南
linux·服务器·python·bash·gpu算力