ubuntu20配置mysql注意事项

目录

一、mysql安装

二、初始化配置密码

三、配置文件的位置

四、常用的mysql命令

五、踩坑以及解决方法


一、mysql安装

1.更新apt源

bash 复制代码
sudo apt update

2.安装mysql服务

bash 复制代码
sudo apt-get install mysql-server

3.初始化配置

bash 复制代码
sudo mysql_secure_installation

4.配置项

  • VALIDATE PASSWORD PLUGIN can be used to test passwords... Press y|Y for Yes, any other key for No: N (选择N ,不会进行密码的强校验)
  • Please set the password for root here... New password: (输入密码) Re-enter new password: (重复输入)
  • By default, a MySQL installation has an anonymous user, allowing anyone to log into MySQL without having to have a user account created for them... Remove anonymous users? (Press y|Y for Yes, any other key for No) : N (选择N,不删除匿名用户)
  • Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network... Disallow root login remotely? (Press y|Y for Yes, any other key for No) : N (选择N,允许root远程连接)
  • By default, MySQL comes with a database named 'test' that anyone can access... Remove test database and access to it? (Press y|Y for Yes, any other key for No) : N (选择N,不删除test数据库)
  • Reloading the privilege tables will ensure that all changes made so far will take effect immediately. Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y (选择Y,修改权限立即生效)

5.检查mysql服务状态

bash 复制代码
systemctl status mysql.service

二、初始化配置密码

1.访问mysql数据库

bash 复制代码
sudo mysql

2.切换数据库

sql 复制代码
use mysql;

3.查询用户表命令

sql 复制代码
select User,authentication_string,Host from user;

4.查看状态

sql 复制代码
select host,user,plugin from user;

5.设置权限与密码

sql 复制代码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密码'; #使用mysql_native_password修改加密规则
ALTER USER 'root'@'localhost' IDENTIFIED BY '密码' PASSWORD EXPIRE NEVER; #更新一下用户的密码
UPDATE user SET host = '%' WHERE user = 'root'; #允许远程访问
  1. 刷新cache中配置 刷新权限
sql 复制代码
flush privileges; 
quit;

三、配置文件的位置

/etc/mysql/my.cnf

配置文件修改如下:

bash 复制代码
[mysqld]
port=3306
socket=/var/lib/mysql/mysql.socket
#socket=/tmp/mysql.socket
skip-external-locking
skip-grant-tables

四、常用的mysql命令

1.重启mysql

bash 复制代码
sudo systemctl restart mysql

2.查看mysql服务状态

bash 复制代码
sudo systemctl status mysql

3.启动mysql

bash 复制代码
sudo systemctl start mysql

五、踩坑以及解决方法

**遇到问题:**Can 't connect to local MySQL server through socket '/tmp/mysql.sock '(2) ";

解决方法:

  1. 按照三中的方法对配置文件进行修改修改后重启mysql服务

  2. 查看在/var/lib/mysql下是否存在mysql.socket

3.尝试如下命令:

bash 复制代码
mysql -u root -p -S /var/lib/mysql/mysql.socket

输入密码后可进入mysql

4.上述命令成功后,进行软连接

bash 复制代码
ln -s /var/lib/mysql/mysql.socket /tmp/mysql.sock

5.之后可通过mysql -u root -p的方式访问mysql

参考链接1

参考链接2

相关推荐
YA33312 分钟前
java基础(十)sql的mvcc
数据库
weixin_307779134 小时前
VS Code配置MinGW64编译SQLite3库
开发语言·数据库·c++·vscode·算法
SelectDB4 小时前
Apache Doris 4.0 AI 能力揭秘(一):AI 函数之 LLM 函数介绍
数据库·人工智能·数据分析
我是哈哈hh5 小时前
【MySQL】在UBuntu环境安装以及免密码登录入门
linux·数据库·mysql·ubuntu
喪彪5 小时前
MySQL新手教学
数据库·mysql·adb
丘大梨8 小时前
QT 基础聊天应用项目文档
运维·数据库·系统架构
HMBBLOVEPDX8 小时前
MySQL的多版本并发控制(MVCC):
数据库·mysql·mvcc
.用户昵称已存在.8 小时前
MongoDB 从入门到精通:安装配置与基础操作指令详解
数据库·mongodb
ClouGence9 小时前
CloudDM 新增支持 GaussDB 与 openGauss:国产数据库管理更高效
数据库·sql·ci/cd