MySQL操作注意事项

文章目录

一、基本说明

  • 系统环境:ubuntu 20.4

二、安装

在Ubuntu上安装MySQL的步骤如下:

1、更新apt-get

首先,你需要更新apt-get以获取最新的软件包列表。在终端中输入以下命令:

bash 复制代码
sudo apt update  
sudo apt upgrade

2、安装MySQL

接下来,使用apt-get命令安装MySQL服务器。输入以下命令:

bash 复制代码
sudo apt install mysql-server

在安装过程中,系统会提示你设置root用户的密码。请确保选择一个安全的密码。

3、确认安装

安装完成后,你可以使用以下命令来确认MySQL服务是否已经启动:

bash 复制代码
sudo service mysql status

或者

bash 复制代码
sudo systemctl status mysql

如果服务正在运行,你应该能看到"active (running)"这样的状态信息。

bash 复制代码
root@VM-8-14-ubuntu:~# sudo systemctl status mysql
● mysql.service - MySQL Community Server
     Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2024-05-09 11:44:43 CST; 12s ago
    Process: 344596 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
   Main PID: 344604 (mysqld)
     Status: "Server is operational"
      Tasks: 38 (limit: 3942)
     Memory: 370.4M
        CPU: 918ms
     CGroup: /system.slice/mysql.service
             └─344604 /usr/sbin/mysqld

May 09 11:44:42 VM-8-14-ubuntu systemd[1]: Starting MySQL Community Server...
May 09 11:44:43 VM-8-14-ubuntu systemd[1]: Started MySQL Community Server.

三、连接MySQL进入模拟器

你可以使用以下命令来连接MySQL服务器(以root用户身份):

执行linux命令:

bash 复制代码
mysql -u root -p

系统会提示你输入之前设置的root用户密码。输入密码后(默认是没有密码,直接ENTER不需要输入),你将进入MySQL的命令行界面。

有可能会出错

bash 复制代码
root@VM-8-14-ubuntu:~# mysql -u root -p
Enter password: 
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111)

可以用这条命令试试

bash 复制代码
mysql -u root -p --socket=/var/run/mysqld/mysqld.sock 

成功进入MySQL模拟器后:

bash 复制代码
root@VM-8-14-ubuntu:~# mysql -u root -p --socket=/var/run/mysqld/mysqld.sock 
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 8.0.36-0ubuntu0.22.04.1 (Ubuntu)

Copyright (c) 2000, 2024, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

四、配置MySQL(可选)

根据你的需求,你可能还需要进行一些额外的配置,例如更改MySQL的配置文件(通常位于/etc/mysql/my.cnf或/etc/mysql/mysql.conf.d/mysqld.cnf),或者创建新的数据库和用户。

五、设置root用户密码

修改root密码为01234567890

执行mysql命令:ALTER USER 'root'@'localhost' IDENTIFIED BY '01234567890';

安装MySQL服务器之后就需要先重新设置root密码。

bash 复制代码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '01234567890';
Query OK, 0 rows affected (0.02 sec)

mysql> 

然后执行FLUSH PRIVILEGES;刷新生效

bash 复制代码
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.01 sec)

mysql> 

六、查看所有用户属性

执行mysql命令:SELECT User, Host FROM mysql.user;
Host列表示该用户的操作范围,%表示所有连接都可以操作以及外网公网,localhost 表示只有在本机主机上才能连接服务器操作

bash 复制代码
mysql> SELECT User, Host FROM mysql.user;
+------------------+-----------+
| User             | Host      |
+------------------+-----------+
| user        	   | %         |
| debian-sys-maint | localhost |
| mysql.infoschema | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| root             | localhost |
+------------------+-----------+
6 rows in set (0.00 sec)

mysql> 

七、创建新用户

创建一个用户名为user,登录密码为1234567890%可以在任意网络连接的用户

执行mysql命令:CREATE USER 'user'@'%' IDENTIFIED BY '1234567890';

bash 复制代码
mysql> CREATE USER 'user'@'%' IDENTIFIED BY '1234567890';
Query OK, 0 rows affected (0.01 sec)

mysql> 

用户授权

创建的新用户是没有任何权限的,要对用户授予权限,这个用户连接后才能建表,查表,修改之类的。

授予用户user所有权限

执行命令:GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' WITH GRANT OPTION;

bash 复制代码
mysql> GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' WITH GRANT OPTION;
Query OK, 0 rows affected (0.01 sec)

mysql> 
授予用户user建表权限

执行mysql命令:GRANT CREATE ON *.* TO 'user'@'%';

bash 复制代码
mysql> GRANT CREATE ON *.* TO 'user'@'%';
Query OK, 0 rows affected (0.01 sec)

mysql> 

除了CREATE DATABASE权限外,你可能还想授予用户其他权限,如ALTERDROPINDEXCREATE TEMPORARY TABLES等。你可以使用逗号分隔的列表来一次性授予多个权限。例如:

sql 复制代码
GRANT CREATE, ALTER, DROP ON *.* TO 'user'@'%';

八、查看所有数据库

执行mysql命令:SELECT DATABASE();

bash 复制代码
mysql> SELECT DATABASE();
+------------+
| DATABASE() |
+------------+
| NULL       |
+------------+
1 row in set (0.00 sec)

mysql> 

九、配置可以外网访问

进入/etc/mysql/mysql.conf.d/,打开文件mysqld.cnf

把以下两行注释掉,就可以

bash 复制代码
# bind-address		= 127.0.0.1
# mysqlx-bind-address	= 127.0.0.1

然后重启一下MySQL服务器

执行linux命令:sudo service mysql restart

bash 复制代码
root@VM-8-14-ubuntu:~# sudo service mysql restart
root@VM-8-14-ubuntu:~# 
相关推荐
MonkeyKing_sunyuhua14 分钟前
ubuntu22.04 docker-compose安装postgresql数据库
数据库·docker·postgresql
天郁青14 分钟前
数据库交互的本地项目:后台管理系统
数据库·交互
马剑威(威哥爱编程)19 分钟前
MongoDB面试专题33道解析
数据库·mongodb·面试
小光学长44 分钟前
基于vue框架的的流浪宠物救助系统25128(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。
数据库·vue.js·宠物
掘金-我是哪吒1 小时前
微服务mysql,redis,elasticsearch, kibana,cassandra,mongodb, kafka
redis·mysql·mongodb·elasticsearch·微服务
零炻大礼包2 小时前
【SQL server】数据库远程连接配置
数据库
zmgst2 小时前
canal1.1.7使用canal-adapter进行mysql同步数据
java·数据库·mysql
令狐少侠20112 小时前
explain执行计划分析 ref_
mysql
随心............2 小时前
python操作MySQL以及SQL综合案例
数据库·mysql
€☞扫地僧☜€2 小时前
docker 拉取MySQL8.0镜像以及安装
运维·数据库·docker·容器