- linux: ubuntu 18.0.4 lsb
- mysql: 5.7.x || 8.x
一 安装5.7.x(默认源)
安装命令
1
2
3
4
5
6
7
8
9# 华为云镜像
sudo sed -i "s@http://.*archive.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list
sudo sed -i "s@http://.*security.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list
# 更新源
sudo apt update
# 安装
sudo apt install mysql-server
# 查看是否安装成功
sudo service mysql status修改用户密码(可选)
1
2
3
4#修改配置文件
sudo vim /etc/mysql/debian.cnf
#修改后重启
sudo service mysql restart方式2
1
2
3
4
5
6use mysql;
// 下面这句命令有点长,请注意。
update mysql.user set authentication_string=password('root') where user='root' and Host ='localhost';
update user set plugin="mysql_native_password";
flush privileges;
quit;
外网访问
开放远程访问端口
1
2#其中bind-address = 127.0.0.1注释掉
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf授权用户远程访问
1
2
3
4
5#进入mysql命令行,密码随便输一个就能进入(root:root)
sudo mysql -uroot -proot
#授权远程用户 root 和密码 root
mysql> grant all on *.* to root@'%' identified by 'root';
mysql> flush privileges;重启服务
1
sudo service mysql restart
二 安装8.x
下载源配置文件
1
2wget -c https://repo.mysql.com//mysql-apt-config_0.8.16-1_all.deb
wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.10-1_all.deb安装源
1
2sudo dpkg -i mysql-apt-config_0.8.16-1_all.deb
sudo apt update安装软件
1
sudo apt-get install mysql-server
修改密码
1
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
远程访问
1
2
3
4USE mysql;
CREATE USER 'user'@'localhost' IDENTIFIED BY 'Password';
GRANT ALL ON *.* TO 'user'@'localhost';
FLUSH PRIVILEGES;
三 Docker 安装
镜像地址
https://hub.docker.com/_/mysql?tab=tags&page=1&ordering=last_updated
拉取镜像
1
2docker pull mysql:5.7
docker pull mysql:8.0运行容器
1
2//默认密码123456
docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7进入mysql
1
mysql -uroot -p
四 完全删除
删除mysql
1
# sudo apt-get remove --purge mysql-\*
查找剩余文件
1
# sudo find / -name mysql -print
手动删除残留
1
# sudo rm -rf /ect/init.d/mysql
五 附加配置
开启binlog
mysql 5.7 binlog ,mysql 8.0默认开启
1
2
3
4# vim /etc/mysql/my.conf 增加如下
[mysqld]
log-bin=mysql-bin
server-id=1查看状态
1
mysql>SHOW VARIABLES LIKE '%bin%';