文章目录
- 一、基本说明
- 二、安装
- 1、更新apt-get
- 2、安装MySQL
- 3、确认安装
 
- 三、连接MySQL进入模拟器
- 四、配置MySQL(可选)
- 五、设置`root`用户密码
- 六、查看所有用户属性
- 七、创建新用户
- 用户授权
- 授予用户user所有权限
- 授予用户user建表权限
 
 
- 八、查看所有数据库
- 九、配置可以外网访问
 
一、基本说明
- 系统环境:ubuntu 20.4
二、安装
在Ubuntu上安装MySQL的步骤如下:
1、更新apt-get
首先,你需要更新apt-get以获取最新的软件包列表。在终端中输入以下命令:
sudo apt update  
sudo apt upgrade
2、安装MySQL
接下来,使用apt-get命令安装MySQL服务器。输入以下命令:
sudo apt install mysql-server
在安装过程中,系统会提示你设置root用户的密码。请确保选择一个安全的密码。
3、确认安装
安装完成后,你可以使用以下命令来确认MySQL服务是否已经启动:
sudo service mysql status
或者
sudo systemctl status mysql
如果服务正在运行,你应该能看到“active (running)”这样的状态信息。
root@VM-8-14-ubuntu:~# sudo systemctl status mysql
● mysql.service - MySQL Community ServerLoaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)Active: active (running) since Thu 2024-05-09 11:44:43 CST; 12s agoProcess: 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.4MCPU: 918msCGroup: /system.slice/mysql.service└─344604 /usr/sbin/mysqldMay 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命令:
mysql -u root -p
系统会提示你输入之前设置的root用户密码。输入密码后,你将进入MySQL的命令行界面。
 有可能会出错
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)
可以用这条命令试试
mysql -u root -p --socket=/var/run/mysqld/mysqld.sock 
成功进入MySQL模拟器后:
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密码。
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '01234567890';
Query OK, 0 rows affected (0.02 sec)mysql> 
然后执行FLUSH PRIVILEGES;刷新生效
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.01 sec)mysql> 
六、查看所有用户属性
执行mysql命令:SELECT User, Host FROM mysql.user;
 Host列表示该用户的操作范围,%表示所有连接都可以操作以及外网公网,localhost 表示只有在本机主机上才能连接服务器操作
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';
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;
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'@'%';
mysql> GRANT CREATE ON *.* TO 'user'@'%';
Query OK, 0 rows affected (0.01 sec)mysql> 
除了CREATE DATABASE权限外,你可能还想授予用户其他权限,如ALTER、DROP、INDEX、CREATE TEMPORARY TABLES等。你可以使用逗号分隔的列表来一次性授予多个权限。例如:
GRANT CREATE, ALTER, DROP ON *.* TO 'user'@'%';
八、查看所有数据库
执行mysql命令:SELECT DATABASE();
mysql> SELECT DATABASE();
+------------+
| DATABASE() |
+------------+
| NULL       |
+------------+
1 row in set (0.00 sec)mysql> 
九、配置可以外网访问
进入/etc/mysql/mysql.conf.d/,打开文件mysqld.cnf
 把以下两行注释掉,就可以
# bind-address		= 127.0.0.1
# mysqlx-bind-address	= 127.0.0.1
然后重启一下MySQL服务器
 执行linux命令:sudo service mysql restart
root@VM-8-14-ubuntu:~# sudo service mysql restart
root@VM-8-14-ubuntu:~#