linux安装mysql
# 前言
Linux服务器上安装mysql二进制文件
【内容:先文字描述,在贴图】
一、linux安装mysql过程
1、首先,你需要从MySQL的官方网站或其他可信源下载mysql-8.0.36-linux-glibc2.17-x86_64.tar.xz二进制文件。 假设你已经有了这个文件,我们可以继续下一步。 选择一个适当的目录来解压MySQL,通常这会是/usr/local或/opt。这里我们使用/usr/local 在该目录下执行sudo tar -xvf mysql-8.0.36-linux-glibc2.17-x86_64.tar.xz -C /usr/local
然后,为了简化路径,我们可以将解压后的目录重命名为mysql
sudo mv /usr/local/mysql-8.0.36-linux-glibc2.17-x86_64 /usr/local/mysql
2、虽然MySQL的二进制分发包可能不强制要求,但出于安全考虑,最好为MySQL运行创建一个专用的用户和组
sudo groupadd mysql
sudo useradd -r -g mysql -s /bin/false mysql
将MySQL目录的所有权更改为新创建的mysql用户:
sudo chown -R mysql:mysql /usr/local/mysql
在初始化之前,确保你有足够的权限来执行以下操作。你可能需要以root用户或使用sudo来执行这些命令
sudo /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
注意:这将生成一个临时的root密码,你需要记录下来或直接从终端输出中复制它,因为你稍后在设置root密码时会用到它
3、创建或编辑MySQL的配置文件my.cnf,通常放在/etc/目录下。配置文件中可以指定MySQL的安装目录、数据目录、端口号等。下面是一个例子:
# 示例配置
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port=3306
socket=/tmp/mysql.sock
character-set-server=utf8mb4
4、启动mysql
sudo service mysql start
检查状态: sudo systemctl status mysql
登录: sudo /usr/local/mysql/bin/mysql -u root -p
这里的密码是第二步初始化时的密码
5、登录后输入命令:
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'
修改密码
FLUSH PRIVILEGES
使其生效
exit
退出
sudo /usr/local/mysql/bin/mysql -u root -p
重新登录
6、本地正常登录后就需要考虑用其他机器来连接
输入命令:
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
开放3306端口
sudo firewall-cmd --reload
重新加载firewalld 的配置
sudo firewall-cmd --zone=public --list-ports
检查端口开放情况
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION
授予远程权限(localhost为指定能访问mysql服务的机器地址)
FLUSH PRIVILEGES
重新加载权限
7,CREATE USER 'admin'@'%' IDENTIFIED BY 'root'
创建admin用户其host属性为任何
SELECT User, Host FROM mysql.user
查看用户属性
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' WITH GRANT OPTION
; 授予admin账号远程权限(%为任何)
FLUSH PRIVILEGES
重新加载权限
二、测试
同一局域网内可直接用navicat连接,linux做集群后,navicat需要配好ssh在连接。
如果连接失败,请检查端口的入站规则,或者防火墙拦截。