Windows环境
解压版安装
版本:mysql-5.6.42-winx64.zip 链接:https://pan.baidu.com/s/1wCV0Ap3OOKQFLWfXxOEDyw 提取码:6mer
- 解压
解压之后可以将该文件夹改名,放到合适的位置,个人建议把文件夹改名为MySQL Server 5.6,放到C:\Program Files\MySQL路径中。当然你也可以放到自己想放的任意位置。
- 配置环境变量
在其后面添加: mysql bin文件夹的路径 (如:C:\Program Files\MySQL\MySQL Server 5.6\bin )
- 修改配置文件
先不要忙着启动mysql,否则会报错,需要先修改一下mysql安装的根目录下的my-default.ini文件,将my-default.ini复制一份重命名为my.ini文件,并修改。
[mysqld]
#mysql安装目录
basedir=C:\Program Files\MySQL\MySQL Server 5.6
#mysql数据库文件存放目录,此处指定mysql安装目录的data目录下
datadir=C:\Program Files\MySQL\MySQL Server 5.6\data
- 安装服务
以管理员身份运行cmd。进入到mysql安装目录的/bin目录下。
执行mysqld -install命令安装服务。提示Service successfully installed. 表示安装成功。
mysqld -install
C:\Program Files\MySQL\MySQL Server 5.6\bin>mysqld -install
Service successfully installed.
注意:不管有没有配置过环境变量,都要进入bin文件夹,否则之后启动服务仍然
错误: 由于找不到MSVCP100.dll,无法继续执行代码。重新安装程序可能会解决此问题。 解决:下载vc2010运行库 64位(根据本机系统环境确定是32位还是64位) ,运行安装
错误:Install/Remove of the Service Denied! 解决:权限不够,检查是否是使用管理员权限运行
错误:系统找不到文件 解决:权限不够,检查是否是使用管理员权限运行
- 启动服务
cmd命令行中接着输入
net start mysql
启动成功
C:\Program Files\MySQL\MySQL Server 5.6\bin>net start mysql
MySQL 服务正在启动 ..
MySQL 服务已经启动成功。
错误:提示“错误2” 解决:检查一下是否修改过配置文件或者是否进入在bin目录下操作,如果配置文件修改正确并且进入了bin文件夹,需要先删除mysql服务(输入 mysqld -remove)再重新安装mysql服务(输入 mysqld -install)
错误:提示“错误1067” 解决:可能是配置文件修改错误,确认一下配置文件是否正确
- 登录
服务启动成功之后,就可以登录了
D:\>mysql -u root -p
Enter password: //此处直接回车,第一次登录没有密码
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.6.42 MySQL Community Server (GPL)
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
登录成功。
- 设置密码:
解压版配置完成后,登录时默认是没有密码的,重启cmd.exe
- 方法一:修改mysql表的方法
使用当前密码进入mysql(初次使用没有密码,则不输密码),选择mysql库
mysql> use mysql
Database changed
修改user表记录,完成密码修改:
mysql> update user set password=password("123456") where user='root' and host='localhost';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
刷新
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
此时,密码设置成功,下次登录后即可使用新的密码登录。
- 方法二:使用mysqladmin命令来设置密码
此时,密码设置成功,下次登录后即可使用新的密码登录。mysqladmin -u root -p password 回车 Enter password:输入当前密码,默认密码为空,则直接回车。 New password:输入新的密码,回车, Confirm new password:确认密码,回车
- 修改默认字符集
查看字符集
mysql> show variables like '%char%';
+--------------------------+---------------------------------------------------------+
| Variable_name | Value |
+--------------------------+---------------------------------------------------------+
| character_set_client | gbk |
| character_set_connection | gbk |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | gbk |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | C:\Program Files\MySQL\MySQL Server 5.6\share\charsets\ |
+--------------------------+---------------------------------------------------------+
8 rows in set (0.00 sec)
编辑配置文件my.ini
在[client]节点下添加
default_character_set = utf8
在[mysqld]节点下添加
character_set_server = utf8
注意:[client]一定要在[mysqld]上方
需重启mysql服务后才能生效,windows下不能直接重启mysql服务,只能先关闭,再启动
关闭mysql服务 net stop mysql
D:\>net stop mysql
MySQL 服务正在停止.
MySQL 服务已成功停止。
启动mysql服务 net start mysql
D:\>net start mysql
MySQL 服务正在启动 .
MySQL 服务已经启动成功。
然后再查看 mysql字符集,filesystem外字符集都已变为utf8
mysql> show variables like '%char%';
+--------------------------+---------------------------------------------------------+
| Variable_name | Value |
+--------------------------+---------------------------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | C:\Program Files\MySQL\MySQL Server 5.6\share\charsets\ |
+--------------------------+---------------------------------------------------------+
8 rows in set (0.00 sec)
安装包安装
// TODO
Linux 环境
RPM包安装
下载rpm包
https://downloads.mysql.com/archives/community/
这里使用5.6.42版本,只下载server 和client即可
下载完成后,上传到服务器
检查是否有安装的mysql 和mariadb
[root@www ~]# rpm -qa | grep -i mysql
[root@www ~]# rpm -qa | grep -i mariadb
如果存在,则卸载
[root@www ~]# rpm -e mariadb-libs-5.5.41-2.el7_0.x86_64
卸载时提示,说明有依赖
error: Failed dependencies:
libmysqlclient.so.18()(64bit) is needed by (installed) postfix-2:2.10.1-6.el7.x86_64
libmysqlclient.so.18(libmysqlclient_18)(64bit) is needed by (installed) postfix-2:2.10.1-6.el7.x86_64
使用yum remove +包名卸载
[root@www ~]# yum remove mariadb-libs-5.5.41-2.el7_0.x86_64
再次执行rpm -qa 检查是否已卸载
创建mysql用户和组
查看是否存在mysql用户和组
cat /etc/passwd
cat /etc/group
创建mysql组和用户
groupadd mysql
useradd -r -g mysql mysql
安装
使用 rpm -ivh 包名 安装
分别安装 下面的rpm包
MySQL-client-5.6.40-1.el6.x86_64.rpm
MySQL-server-5.6.40-1.el6.x86_64.rpm
安装client
[root@www mysql]# ll
total 74616
-rw-r--r--. 1 root root 18895560 Aug 11 22:08 MySQL-client-5.6.40-1.el6.x86_64.rpm
-rw-r--r--. 1 root root 57504164 Aug 11 22:10 MySQL-server-5.6.40-1.el6.x86_64.rpm
[root@www mysql]# rpm -ivh MySQL-client-5.6.40-1.el6.x86_64.rpm
warning: MySQL-client-5.6.40-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:MySQL-client-5.6.40-1.el6 ################################# [100%]
安装server
[root@www mysql]# rpm -ivh MySQL-server-5.6.40-1.el6.x86_64.rpm
warning: MySQL-server-5.6.40-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:MySQL-server-5.6.40-1.el6 ################################# [100%]
...
...
...
server安装过程中提示有随机密码已生成在某个位置
使用rpm命令检查是否安装成功
[root@www ~]# rpm -qa | grep -i mysql
MySQL-server-5.6.40-1.el6.x86_64
MySQL-client-5.6.40-1.el6.x86_64
使用 ps -ef 检查mysql进程是否存在,判断是否已启动
[root@www ~]# ps -ef | grep mysql
root 6269 5929 0 22:29 pts/0 00:00:00 grep --color=auto mysql
如果不存在,使用启动命令启动,常用命令如下:
service mysql start
service mysql status
service mysql stop
错误一: rpm -ivh MySQL-server-5.6.42-1.el7.x86_64.rpm warning: MySQL-server-5.6.42-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY error: Failed dependencies: perl(Data::Dumper) is needed by MySQL-server-5.6.42-1.el7.x86_64 解决:yum -y install autoconf
重置mysql密码
方法一:使用随机密码登录mysql
[root@www ~]# mysql -u root -p
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
如果提示以上错误,重启mysql服务可以解决(如果不能解决,可能要找其他方法)
登录进去后,使用以下命令修改密码
[root@localhost ~]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.6.42 MySQL Community Server (GPL)
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> set password for root@localhost=password('123456');
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql>
默认随机密码登录的是不可以进行任何操作的,必须要修改密码
方法二:使用mysqladmin
[root@www ~]# mysqladmin -u root -p password
Enter password: 输入当前密码,也就是刚才生成的随机密码
New password: 输入新密码
Confirm new password: 输入新密码
修改权限
修改权限使其可以远程登录mysql
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
Query OK, 0 rows affected (0.00 sec)
# 刷新权限
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
GRANT:赋权命令ALL PRIVILEGES:当前用户的所有权限 ON:介词 .:当前用户对所有数据库和表的相应操作权限 TO:介词 ‘root’@’%’:权限赋给root用户,所有ip都能连接 IDENTIFIED BY ‘123456’:连接时输入密码,密码为123456 WITH GRANT OPTION:允许级联赋权 [
](https://blog.csdn.net/u010953706/article/details/95985946)
修改字符集
修改my.cnf文件
查看/etc目录下是否存在my.cnf文件,如果不存在,则在/usr/share/mysql目录下复制my-*.cnf文件到/etc目录下,改名为my.cnf
[root@www mysql]# pwd
/usr/share/mysql
[root@www mysql]# ll | grep *.cnf
-rwxr-xr-x. 1 root root 1126 Feb 26 2018 my-default.cnf
[root@www mysql]# cp my-default.cnf /etc/my.cnf
vim /etc/my.cnf
[mysqld]
character_set_server = utf8
mysql> show variables like '%char%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
mysql>