# MySQL 使用 apt 安装 *平台部署知识* 您可以在此文章中了解到关于 MySQL 的安装流程。 ## 目录 [TOC]  ## apt 准备 首先我们需要对 apt 进行一个更新 ``` sudo apt-get update ``` 然后我们使用下面的命令来将 MySQL 安装到系统中。 ``` sudo apt-get install mysql-server sudo apt-get install mysql-client sudo apt-get install libmysqlclient-dev ``` ## mysql 基本配置(可选) ### 修改用户密码 > 在不同的版本中有不同的效果和操作,通常情况下我们更建议使用 [准备一个新用户](#准备一个新用户) 并将用户做为外界的业务用户的操作,这样会更方便和安全! 通过 `sudo cat /etc/mysql/debian.cnf ` 操作就可以看到有关MySQL 用户信息的配置。 ``` root@liming-virtual-machine:/opt/software# cat /etc/mysql/debian.cnf # Automatically generated for Debian scripts. DO NOT TOUCH! [client] host = localhost user = debian-sys-maint password = M9fGpZH8flhswP8z socket = /var/run/mysqld/mysqld.sock [mysql_upgrade] host = localhost user = debian-sys-maint password = M9fGpZH8flhswP8z socket = /var/run/mysqld/mysqld.sock ``` 可以看到文件中有很多的信息,我们需要找到类似下面的配置。 ``` user = debian-sys-maint //为自动配置的默认用户 password = M9fGpZH8flhswP8z //为自动配置的密码 ``` 然后使用此操作直接登录,登录之后使用下面的命令将 root 用户的密码修改。 ``` ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456'; flush privileges; ``` ### 重新启动 MySQL ``` sudo service mysql restart ``` ## 远程访问 mysql 配置(可选) ### 配置入网IP的允许列表 我们使用 `sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf` 命令来打开 MySQL 的配置文件,其中找到 `bind-address` 参数,并将其对应的值改为 `0.0.0.0` 这代表的就是 数据库会接收来自哪个IP的请求,0.0.0.0 代表所有远程IP都支持。 然后重新启动即可! ``` sudo service mysql restart ``` ### 为一个用户启用远程登录功能 首先我们需要使用下面的操作来进入到 MySQL 数据库,这个库中存储的就是 MySQL 的系统信息。 ``` show databases; //查看所有数据库 use mysql; //指定需要操作的数据库 show tables; //查看该数据库内包含的所有表 ``` #### 准备一个用户,或者直接使用 root 用户 > 在这里我们是使用的 root 用户 ``` select host,user from user where user='root'; ``` 当我们查询到之后 如果其中的 `host` 列 不是 `%` 就使用下面的操作将其设置为 `%`。 ``` update user set host='%' where user='root' and host='localhost'; flush privileges; ``` 然后再重新启动MySQL就可以啦! #### 准备一个新用户 我们在这里展示了一个案例. > 要在MySQL中创建一个名为test的用户,允许其从任何地方登录,并将a库的所有权限赋予给此用户,您可以按照以下步骤操作 ``` # 创建一个名为 test 密码为 password123 允许任何设备登录的MySQL用户 CREATE USER 'test'@'%' IDENTIFIED BY 'password123'; # 还可以使用此操作将一个库的所有权限给 test 用户,注意这里的a代表的是数据库的名字 GRANT ALL PRIVILEGES ON a.* TO 'test'@'%'; # 刷新权限 FLUSH PRIVILEGES; ``` ------ ***操作记录*** 作者:[root](https://www.lingyuzhao.top//index.html?search=1 "root") 操作时间:2024-06-03 17:26:07 星期一 事件描述备注:保存/发布 中国 天津 [](如果不需要此记录可以手动删除,每次保存都会自动的追加记录)