1、下载
下载地址:http://dev.mysql.com/downloads/mysql/5.6.html#downloads
下载版本:我这里选择的5.6.33,通用版,linux下64位
也可以直接复制64位的下载地址,通过命令下载:wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz
2、解压
1
2
3
4
|
#解压
tar
-zxvf mysql-5.6.33-linux-glibc2.5-x86_64.
tar
.gz
#复制解压后的mysql目录
cp
-r mysql-5.6.33-linux-glibc2.5-x86_64
/usr/local/mysql
|
3、添加用户组和用户
1
2
3
4
|
#添加用户组
groupadd mysql
#添加用户mysql 到用户组mysql
useradd
-g mysql mysql
|
4、安装
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
cd
/usr/local/mysql/
mkdir
.
/data/mysql
chown
-R mysql:mysql ./
.
/scripts/mysql_install_db
--user=mysql --datadir=
/usr/local/mysql/data/mysql
cp
support-files
/mysql
.server
/etc/init
.d
/mysqld
chmod
755
/etc/init
.d
/mysqld
cp
support-files
/my-default
.cnf
/etc/my
.cnf
#修改启动脚本
vi
/etc/init
.d
/mysqld
#修改项:
basedir=
/usr/local/mysql/
datadir=
/usr/local/mysql/data/mysql
#启动服务
service mysqld start
#测试连接
.
/mysql/bin/mysql
-uroot
#加入环境变量,编辑 /etc/profile,这样可以在任何地方用mysql命令了
export
PATH=$PATH:
/usr/local/mysql/bin
#启动mysql
service mysqld start
#关闭mysql
service mysqld stop
#查看运行状态
service mysqld status
|
5、错误
5.1 sqlyog连接时,报1130错误,是由于没有给远程连接的用户权限问题
解决1:更改 ‘mysql’数据库‘user’表‘host’项,从‘localhost’改成‘%’。
use mysql; select 'host' from user where user='root'; update user set host = '%' where user ='root'; flush privileges;
解决2:直接授权
GRANT ALL PRIVILEGES ON *.* TO ‘root’@'%’ IDENTIFIED BY ‘youpassword’ WITH GRANT OPTION;
5.2 安装时的一些错误
-bash: ./scripts/mysql_install_db: /usr/bin/perl: bad interpreter: 没有那个文件或目录 解决: yum -y install perl perl-devel Installing MySQL system tables..../bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
解决:yum -y install libaio-devel
6、其他
6.1 配置环境变量
vi + /etc/profile
export PATH=....:/usr/local/mysql/bin
7 mysql 开启服务自启动
命令echo "service mysqld start" >> /etc/rc.local
或者进入/etc/目录,直接vim rc.local编辑rc.local文件,在最后一行添加“service mysqld start”,保存退出
8 mysql初始化密码
因为mysql刚安装好是没有密码的,所以我们要将其设置密码
⑴、刚安装时,root用户是空的,需要修改密码: ①mysqladmin -u root password ‘new-password’ ②或者,登陆后,直接修改用户表里的密码 mysql -u root #用root用户登录 1. select user,host,password from mysql.user; 查看数据库的用户 2. use mysql #切换到mysql表 set password for root@localhost=password('123456'); #设置指定域名下root账号的密码 set password for root@域名=password('123456'); 3.或者,更常见的sql操作: update user set password=password('123456') where user=‘root@localhost’; ⑵、匿名用户是危险的 delete from mysql.user where user=''; #删除匿名用户 ⑶、退出mysql: exit;
测试
[root@dream ~]mysql -u root #匿名登录,已设置密码或者删除了匿名用户,登陆失败 [root@dream ~]mysql -u root -p #通过密码用root登录 Enter password: #在这里输入密码123456 [root@dream ~]mysql -u root -p 123456 #显示密码登陆
9 设置本机远程访问远程服务器的mysql
NaviCat远程连接的权限问题
远程登录会出现如下提示:
1103 - host xxx.xxx.xxx.xx is not allowed to connec to this mysql server. 或 1045 - Access denied for user 'root'@'192.168.1.11' (using password: YES).
解决方案:
//mysql访问 grant all privileges on *.* to 'root'@'%' identified by '123456'; #其实就是权限问题,设置root在所有域名(%表示任何地址)登陆时,赋给所有权限,密码123456。根据需要可设置更严格些。
上面的123456是你自己设置的密码,远程密码应该要严格一点,否则会不恶意攻破