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

相关推荐
五岳8 分钟前
DTS按业务场景批量迁移阿里云MySQL库实战(上):技术选型和API对接
mysql·阿里云·dts
我科绝伦(Huanhuan Zhou)12 分钟前
脚本再升级,兼容Oracle 26ai一键安装
数据库·oracle
野生绿箭侠44 分钟前
Ncos 2.3.2 版本集成达梦数据库
数据库
仍然.1 小时前
MYSQL--约束
数据库·mysql
乡野码圣2 小时前
【RK3588 Android12】RCU机制
java·jvm·数据库
亓才孓2 小时前
[数据库]应该注意的细节
数据库·sql
m0_561359673 小时前
掌握Python魔法方法(Magic Methods)
jvm·数据库·python
xxxmine3 小时前
redis学习
数据库·redis·学习
qq_5470261793 小时前
Redis 常见问题
数据库·redis·mybatis
APIshop3 小时前
Java 实战:调用 item_search_tmall 按关键词搜索天猫商品
java·开发语言·数据库