1.查看本机是否安装mysql
service mysqld status
service mysql status
# Unit mysqld.service could not be found.
# Unit mysql.service could not be found.
未找到mysqld &mysql 服务 没有安装
whereis mysql
# mysql: /etc/mysql
有初始化的mysql文件
2.卸载清除mysql
TIPS:初始化系统不建议删除mysql文件
如果已经安装过旧版,需要卸载可:
1.非apt安装 删除目录和文件 以及配置项
2.apt安装
执行 $ sudo apt-get --purge remove mysql-server mysql-common mysql-client
find 命令找到mysql 文件和目录,如下:(不加sudu 扫描文件时会大量提示Permission denied)
3.apt安装mysql服务
更新软件包
安装mysql-server mysql-client 服务和客户端
报错:
原因:
因为前一步删除了'/etc/mysql' 目录,安装启动时找不到目录,所以报错
解决办法:
查看mysql服务状态
service mysql status
查看mysql端口监听
netstat -tnlp | grep 3306
查看mysql配置文件
cat /etc/mysql/my.cnf
/etc/mysql/mysql.cnf
mysql的所有配置文件后缀名都为'.cnf'
配置文件指向2个目录
/etc/mysql/conf.d/ 目录新建的 没有文件 (/etc/mysql/my.cnf &/etc/mysql/mysql.cnf 中这一行可以注释掉?)
/etc/mysql/mysql.conf.d/ 目录包含 mysql.cnf mysqld.cnf
mysql.cnf 无默认配置项
mysqld.cnf 配置项如下:
mysql的所有全局配置项都在 /etc/mysql/mysql.conf.d/mysqld.cnf 中配置
4.修改root用户初始化密码
4.1 查看系统debian用户配置文件
sudo cat /etc/mysql/debian.cnf
4.2 debian-sys-maint 用户登录mysql
4.3 修改密码
4.4 check:使用root用户名和密码123456登录
备注:
修改密码时候使用以下语法会报错
update mysql.user set authentication_string=PASSWORD('123'), plugin='mysql_native_password' where user='root';
原因:mysql5.7版本后不支持password函数
其它方法:
先修改root用户的密码类型
再重新定义新密码
同样的效果
5.创建新用户并授权
5.1登录mysql 进入mysql shell
mysql -uroot -p123456
5.2 创建用户test 密码123456
注意:这里创建用户后密码类型默认为 caching_sha2_password
可能会有其它APP连接mysql报错
5.3 给test用户授权
grant all on 数据库名.数据库表 to 用户名@'%' identified by "密码";
all 可以替换为 select,delete,update,create,drop
数据库名 所有的 用*
数据库表 所有的 用*
5.4 查看test用户权限
OK 权限配置成功
6.配置其它IP访问连接mysql
6.1 查看mysql服务 监听端口
只有本地环回监听 ,其它IP无法连接mysql服务
6.2 修改mysql配置文件 /etc/mysql/mysql.conf.d/mysqld.cnf
6.3 重启mysql服务
重启
查看mysql服务状态
6.4 查看端口状态
OK 其它IP可以访问本机mysql服务
如果3306监听IP为127.0.0.1 其它IP访问会报错
6.5 windows下Navicat访问ubuntu-mysql
6.5.1 查看本机IP地址
desktop版,可以直接在settings--network--wared--setting查看ubuntu IP地址
6.5.2 Navicat连接测试
OK~