linux配置mysql
上一级页面:mysql安装配置-linux
前言
linux安装好mysql后,需要进行初始化和配置
查看mysql的默认安装路径在/usr/share/mysql
whereis mysql
可以看到,使用deb文件安装,其安装目录在/usr/share/mysql
ll /usr/share/mysql
whereis mysql57
可以看到手动安装,其安装目录在/usr/local/mysql57
添加安全保护
切换root用户
sudo -s
前往安装目录
cd /usr/local/mysql57
在生产中使用 MySQL 5.7 之前,您应该首先保护它。 您可以通过运行以下命令来做到这一点:
bin/mysql_secure_installation --socket=/tmp/mysql57.sock --defaults-file=/usr/local/mysql57/my.cnf --user=mysql
如果是mysql8.x,命令类似上面,更改一下默认配置文件路径
输入您的 MySQL 根密码并回答所有安全问题。
确认密码安全政策
SHOW VARIABLES LIKE 'validate_password%';
部署自动支持安全连接的服务器mysql_ssl_rsa_setup
如果要部署自动支持安全连接的服务器,请使用mysql_ssl_rsa_setup实用程序创建默认 SSL 和 RSA 文件:
切换到 root用户
sudo -s
前往安装目录
cd /usr/local/mysql57
bin/mysql_ssl_rsa_setup --socket=/tmp/mysql57.sock --defaults-file=/usr/local/mysql57/my.cnf --user=mysql
修改密码
由于默认安装的MySQL没有password
字段,密码存储在authentication_string
字段中,不过password()
方法还能用。
切换到 root用户
sudo -s
在MySQL中逐行
执行下面语句修改密码
1:进入MySQL:
/usr/local/mysql80/bin/mysql --socket=/tmp/mysql80.sock -uroot -p
2: 输入以下命令设置密码:
# 切换到mysql数据库
use mysql;
#设置密码:password:新密码;user: 用户
alter user'root'@'localhost' identified by '新密码';
# 刷新MySQL的系统权限相关表
flush privileges;
查看修改结果
select host, user, authentication_string, plugin from user;
设置远程连接
见如何在MySQL 8.0中向root用户授予所有权限 - 堆栈溢出 (stackoverflow.com)
1:输入以下命令
PASSWORD 修改为你的密码
# 切换到mysql数据库
use mysql;
# 设置一个远程登陆专用用户,PASSWORD 修改为你的密码。 用户名为 root
CREATE USER 'root'@'%' IDENTIFIED BY 'PASSWORD';
# 设置user用户远程访问
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
# 刷新MySQL的系统权限相关表
flush privileges;
查看修改结果
SELECT User,Host FROM mysql.user;
要更改远程登录用户的密码,执行下面的命令
# 切换到mysql数据库
use mysql;
#设置密码:password:新密码;user: 用户
alter user'root'@'%' identified by '新密码';
# 刷新MySQL的系统权限相关表
flush privileges;
登录后确定basedir和datadir
datadir默认路径:
windows在
C:\ProgramData\MySQL\MySQL Server 5.6\data
(注意:ProgramData文件夹是隐藏的,需要先显示出来)linux在
/var/lib/mysql
(这个是自己初始化mysqld --initialize
的时候指定的)
2.在mysql工具中使用命令: 确定data目录在哪里(MySQL的数据存放路径)
show global variables like "%datadir%";
同理还能确定basedir
show global variables like "%basedir%";
设置文件导出路径
MySQL :: MySQL 5.7 参考手册 :: 5.1.7 服务器系统变量
来到mysql安装目录下
cd /usr/local/mysql57
mkdir mysql-files
chown mysql:mysql mysql-files
chmod 750 mysql-files
Navicat远程连接验证
如提示不能成功连接,可能需要添加需要监听的端口
/usr/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
注意:常用命令
--退出mysql命令窗口
exit
--查看mysql状态
service mysql status
--停止mysql
service mysql stop
--启动mysql
service mysql start