windows安装mysql:
1、获取并解压安装包:mysql-8.0.20-winx64.zip
2、配置环境变量:
3、管理员权限打开cmd,进入安装目录:
H:\>cd H:\tools\mysql-8.0.20-winx64\bin
4、生成data文件,或者手动创建data空目录(执行mysqld --initialize):
mysqld --initialize-insecure --user=mysql
5、如果没有生成my.ini,需要手动创建,指定data路径:
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=H:\\tools\mysql-8.0.20-winx64
# 设置mysql数据库的数据的存放目录
datadir=H:\\tools\mysql-8.0.20-winx64\data
# 允许最大连接数
max_connections=500
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
6、安装MySQL的windows服务:
H:\tools\mysql-8.0.20-winx64\bin>mysqld -install
Service successfully installed.
7、启动服务:
H:\tools\mysql-8.0.20-winx64\bin>net start mysql
MySQL 服务正在启动 ....
MySQL 服务已经启动成功。
8、登录MySQL:
首先需要获取到临时密码:在data下面的.err文件中。
2020-07-13T02:31:13.254306Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: llf-iq<w2B!B
登录:
H:\tools\mysql-8.0.20-winx64\bin>mysql -u root -p
Enter password: ************
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 8.0.20
重置密码:
mysql> alter user 'root'@'localhost' identified with mysql_native_password by '123456';
Query OK, 0 rows affected (0.10 sec)
至此,MySQL安装完成。
另,若安装失败需要删除服务,执行命令:sc delete MySQL
linux (centos7)下安装mysql:
1、获取安装包并安装
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql-community-server
2、启动服务
service mysqld start
3、登录并设置新密码
grep "password" /var/log/mysqld.log
mysql -uroot -p
4、创建新用户(可以不创建)
CREATE USER 'user_name'@'host' IDENTIFIED BY 'password';
- user_name:要创建用户的名字。
- host:表示要这个新创建的用户允许从哪台机登陆,如果只允许从本机登陆,则 填 ‘localhost’ ,如果允许从远程登陆,则填 ‘%’
- password:新创建用户的登陆数据库密码,如果没密码可以不写。
5、授权用户
GRANT privileges ON databasename.tablename TO ‘username’@‘host’
grant all on *.* to root@'%' identified by 'new password'
- privileges:表示要授予什么权力,例如可以有 select , insert ,delete,update等,如果要授予全部权力,则填 ALL
- databasename.tablename:表示用户的权限能用在哪个库的哪个表中,如果想要用户的权限很作用于所有的数据库所有的表,则填 *.*,*是一个通配符,表示全部。
- ’username‘@‘host’:表示授权给哪个用户。
6、mysql相关文件目录
#(a)数据库目录
/var/lib/mysql/
#(b)配置文件
/usr/share /mysql(mysql.server命令及配置文件)
#(c)相关命令
/usr/bin(mysqladmin mysqldump等命令)
#(d)启动脚本
/etc/rc.d/init.d/(启动脚本文件mysql的目录)
mysql配置文件: /etc/my.cnf
遇到问题
远程服务器无访问权限:1130, "10.68.4.65' is not allowed to connect to this MySQL server"
解决办法:
-
进入数据库:mysql -u root -p
-
修改mysql 权限表:
use mysql; update user set host='%' where user='root'; flush privileges;