官网下载tar.gz
解压 tar -zxvf xxx.tar.gz
改名,不然名字太长了
mv xxx mysql
进入etc下创建my.cnf
cd /etc
touch my.cnf
粘贴以下内容
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/opt/mysql
datadir=/opt/mysql/data
socket=/tmp/mysql.sock
log-error=/opt/mysql/mysql.err
pid-file=/opt/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
初始化
进入/opt/mysql/bin目录下执行
./mysqld --defaults-file=/etc/my.cnf --basedir=/opt/mysql/ --datadir=/opt/mysql/data --user=mysql --initialize
交给systemctl管理。
cd /etc/systemd/system
创建mysql.service
[Unit]
Description=MySQL Server
After=network.target
[Service]
User=mysql
Group=mysql
ExecStart=/opt/mysql/bin/mysqld --defaults-file=/etc/my.cnf
ExecStop=/opt/mysql/bin/mysqladmin shutdown
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.target
重启策略
systemctl daemon-reload
查看root密码
opt/mysql/mysql.err文件中。找到
A temporary password is generated for root@localhost: VV,VXywIg3P&
冒号后面的就是临时密码。
回到mysql/bin目录下,执行
./bin/mysql -uroot -p
输入临时密码。然后连接上以后,修改root密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
此时root密码修改完毕。但是root只能在localhost上登陆。
设置root可远程登陆
两种方式:
1.重新创建一个
CREATE USER 'root'@'%' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
2.修改原来的
UPDATE mysql.user SET Host='%' WHERE User='root' AND Host='localhost';
FLUSH PRIVILEGES;
重新服务