一、下载地址:http://dev.mysql.com/downloads/mysql/
1.进入官网下载,显示的应该是最新版本,选择第二个(mysql5.7.20-winx64.zip)
2.下载完成后,直接解压到自定义目录,解压目录就是安装目录
二、配置环境变量
1.新增环境变量,例:
变量名:MYSQL_HOME
变量值:D:\mysql\mysql5.7.20-winx64
2.修改环境变量PATH
在PATH后面加入%MYSQL_HOME%\bin,注:加入新的变量值需要用;隔开
三、添加my.ini配置文件
1.下载的压缩文件中没有my.ini配置文件和data文件夹,需要手动在根目录(D:\mysql\mysql5.7.20-winx64\)下新建文本my.ini,如果 data 不能自动生成就放 bin 目录下,my.ini,内容如下:
[mysqld]
bind-address = 0.0.0.0
port = 8020
explicit_defaults_for_timestamp = true
character-set-client-handshake = FALSE
character-set-server = UTF8MB4
tmpdir="d:/tools/mysql-8.0.22-winx64/tmp"
basedir="d:/tools/mysql-8.0.22-winx64"
tmpdir="d:/tools/mysql-8.0.22-winx64/data"
max_connections=200
default-authentication-plugin=mysql_native_password
#skip_grant_tables
[mysql]
default-character-set = UTF8MB4
[mysql.server]
default-character-set = UTF8MB4
[client]
default-character-set = UTF8MB4
[WinMySQLadmin]
Server = "d:/tools/mysql-8.0.22-winx64/bin/mysqld.exe"
四、以管理员身份运行命令行cmd,进入bin目录(一定要进入bin目录)
mysqld --initialize --user=mysql --console (生成临时密码,要记住)
mysqld --install
net start mysql
mysql -P8020 -uroot -p (输入刚才的临时密码)
SET PASSWORD FOR 'root'@'localhost' = 'password';
use mysql;
update user set host='%' where user='root';
flush privileges;
grant system_user on *.* to 'root'; //root还缺一些权限,不能操作其它用户,需要给予所有权限
五、成功
其他:移除服务命令,在bin目录下(mysqld --remove)
备份 MySql 数据库:
mysqldump -uroot -pPassword mydb | gzip > /home/backup/mydb_$(date +%Y%m%d_%H%M%S).sql.gz
mysqldump -P8010 -uroot -pPassword mydb > D:\data\bak\mydb.sql
备份SP:
mysqldump -uroot -pPassword -n -t -d -R mydb > /home/backup/mydb_sp.sql
mysqldump -P8010 -uroot -pPassword -n -t -d -R mydb > D:\data\bak\mydb_sp.sql
删除10天前的备份:
find /home/backup -mtime +10 -name "*.*" -exec rm -rf {} \;
windows版本下:
D:\tools\mysql-8.0.17-winx64\bin>mysqldump -uroot -pPassword crms > D:\crms_db.sql
D:\tools\mysql-8.0.17-winx64\bin>mysqldump -uroot -pPassword -n -t -d -R crms > D:\crms_sp.sql
创建数据库:
create database allchat;
还原数据库:
source D:\sql.sql
增加用户、修改密码登录、远程访问及权限
CREATE USER 'operator'@'%' IDENTIFIED BY 'Password';
ALTER USER 'operator'@'%' IDENTIFIED WITH mysql_native_password BY 'Password';
grant all privileges on ball.* to 'operator'@'%';
#UPDATE mysql.user set Select_priv='Y',Insert_priv='Y',Update_priv='Y',Delete_priv='Y',Create_priv='Y',Drop_priv='Y',Execute_priv='Y',Alter_priv='Y',create_routine_priv='Y',alter_routine_priv='Y',Grant_priv='Y',Super_priv='Y' where user='operator';
flush privileges;
删除用户:
drop user 'allchat_db'@'localhost';
修改密码:
ALTER USER 'user'@'%' IDENTIFIED WITH mysql_native_password BY'Password';
Ubuntu 服务重启:
/etc/init.d/mysql start|stop|restart|reload|force-reload|status
日志读取:
mysqlbinlog --no-defaults /var/lib/mysql/ib_logfile0 > /home/test.txt
移除黑名单(IP被阻止):
flush hosts;
mysql 查看版本号:
mysql --version
mysql> status;
远程连接:
mysql -h192.168.10.28 -P9906 -uroot -p
Ubuntu Mysql 配置文件位置:
cd /etc/mysql/mysql.conf.d
vi mysqld.cnf
迁移安装位置:
修改系统虚拟变量 - 卸载服务[mysqld --remove] - 重启 - 目录复制到新位置 - 修改my.ini - 安装服务[mysqld --install] - 启动
忘记重置密码:
mysqld –shared-memory –skip-grant-tables
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Password';