- 先检查是否有mysql用户组和mysql用户,没有就添加有就忽略:
groups mysql
- 添加用户组和用户
groupadd mysql && useradd -r -g mysql mysql
- 创建数据目录并赋予权限
mkdir -p /data/mysql
- 修改配置文件 vim /etc/my.cnf (没有就新建)
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
- 解压后的
mysql-5.7.35-linux.tar.gz
文件移动到/usr/local/mysql
(文件夹名称修改为mysql不带版本号信息)
cd /usr/local/mysql/bin/
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize
- 查看初始密码
cat /data/mysql/mysql.err
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
service mysql start
修改密码
- 开启免密码登陆 修改
my.cnf
文件 默认在/etc/my.cnf
。
vim /etc/my.cnf
在【mysqld】模块下面添加:skip-grant-tables
保存退出。
- 重启服务,使配置生效 。
service mysql restart
登陆
/usr/local/mysql/bin/mysql -u root -p
//不输入密码直接敲回车键刷新规则允许外部访问
use mysql #选择访问mysql库
update user set host = '%' where user = 'root'; #使root能再任何host访问
FLUSH PRIVILEGES; #刷新
- 修改密码
ALTER USER "root"@"%" IDENTIFIED BY "1234";
FLUSH PRIVILEGES; #刷新