一、下载
http://dev.mysql.com/downloads/file/?id=465969
下载安装文件 后,
tar -zxvf mysql-5.6.34-linux-glibc2.5-x86_64.tar.gz
复制解压后的安装目录
cp mysql-5.6.34-linux-glibc2.5-x86_64 /usr/local/ -r
修改mysql目录名称
mv mysql-5.6.34-linux-glibc2.5-x86_64 mysql
二、配置安装
添加系统mysql组和mysql用户:执行命令:groupadd mysql和useradd -r -g mysql mysql
groupadd mysql
useradd -r -g mysql mysql
进入安装mysql软件目录:执行命令 cd /usr/local/mysql
修改当前目录拥有者为mysql用户:执行命令 chown -R mysql:mysql ./
Binlog
Binlog是非常重要的,在恢复和复制mysql是很重要的功能,mysql默认是不打开Binlog功能的。
通过配置/etc/my.cnf配置文件的log-bin选项:
[mysqld]
log-bin=mysql-bin
port=3305
my.cnf还可以配置端口port=3305,修改配置文件的需要重启MySQL服务。
可以使用SET SQL_LOG_BIN=0命令停止使用日志文件,然后可以通过SET SQL_LOG_BIN=1命令来启用。
安装数据库:
./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
修改当前目录拥有者为root用户:执行命令 chown -R root:root ./
修改当前data目录拥有者为mysql用户:执行命令 chown -R mysql:mysql data
三、启动
启动mysql服务和添加开机启动mysql服务:
需要添加开机启动,把启动脚本放到开机初始化目录
cp support-files/mysql.server /etc/init.d/mysql
启动mysql服务:
[root@localhost mysql]# service mysql start
Starting MySQL. SUCCESS!
如果启用mysql服务,比如
[root@localhost support-files]# ./mysql.server start
Starting MySQL... ERROR! The server quit without updating PID file (/usr/local/mysql/data/localhost.pid).
/etc/my.cnf文件没有或者是内容不对,可以从mysql的support-files目录下,拷贝my-default.cnf文件过去/etc目录下修改下内容,并改名为my.cnf。
如果安装在windows下的,则是my.ini
文件,详情看5.1.2.2 Using a Sample Default Server Configuration File
1.修改密码
修改mysql的root用户密码,root初始密码为空的
执行命令:./bin/mysqladmin -u root password '密码'
[root@localhost mysql]# ./bin/mysqladmin -u root password 'root'
./bin/mysqladmin: connect to server at 'localhost' failed
error: 'Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)'
Check that mysqld is running and that the socket: '/tmp/mysql.sock' exists!
可以使用下面命令来修改root密码
mysql> use mysql;
mysql> UPDATE user SET password=password("root") WHERE user='root';
mysql> flush privileges;
mysql> exit;
2.客户端连接异常
连接异常:Host * is not allowed to connect to this MySQL server
原因:
在Linux下为了安全,默认是不允许mysql本机以外的机器访问mysql数据库服务,因此需要重新授权root
解决:
mysql> update user set host = '%' where user = 'root';
ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY'
mysql> flush privileges;
mysql> exit;
在客户端连接MySQL异常
bin>mysql.exe -h 192.168.204.79 -P 3306 -u root -p
Enter password: ********
ERROR 1130 (HY000): Host '192.168.204.107' is not allowed to connect to this MySQL server
解决:
在服务器连接MySQL
切换到database mysql
mysql> grant all privileges on *.* to 'root'@'%' identified by 'root';
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
客户端就可以连接mysql了