这篇我们来讲讲Linux下Mysql的安装。
1. 先去官网下载 Mysql,我这里依然下的是tar.gz,下载完后,放入我们的自定义目录下: 2. 解压压缩包(我这里mysql是5.7的,可能跟此之前的版本会有点出入):
tar -xvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz3. 创建 Mysql 组和用户
groupadd mysql useradd -r -g mysql mysql4. 拷贝解压后的文件至 /usr/local/mysql 目录下:
cp -R mysql-5.7.17-linux-glibc2.5-x86_64 /usr/local/mysql5. 创建data目录:
mkdir /usr/local/mysql/data6. 切换至 /usr/local/mysql 目录,修改当前目录所有者为 mysql 用户:
cd /usr/local/mysql chown -R mysql:mysql ./7. 安装数据库:
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data上述的Warning可以忽略,我们这里要记录的是最后一行所赋给root的初始密码(如我这里为 )YemIweXp4g))。 执行以下命令创建 RSA private key:
bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data将 mysql 目录下除了 data 目录的所有文件改回 root 用户所有,mysql 用户只需要作为 mysql/data 目录下所有文件的所有者。
chown -R root . chown -R mysql data8. 复制配置文件并且修改 my.cnf 文件:
cp support-files/my-default.cnf /etc/my.cnf vi /etc/my.cnf [mysqld] basedir=/usr/local/mysql datadir=/usr/local/mysql/data port = 3306 socket=/usr/local/mysql/tmp/mysql.sock创建目录:
mkdir -p /usr/local/mysql/tmp chown -R mysql:mysql tmp9. 将 mysqld 服务加入开机自启动项: 这里将 mysql.server 拷贝为 /etc/init.d/mysql 并设置运行权限,这样子就可以使用 service mysql 命令启动/停止服务。
cp mysql.server /etc/init.d/mysql这里还需要将 mysql.server 中的 basedir 的相关路径,修改为自定义的路径(如果有的话),因为这里默认路径是 /usr/local/mysql,所以我这里不做修改。 将 mysql 注册成为开机启动的服务:
chkconfig --add mysql10. 将 mysql 加入到环境变量中: 编辑 /etc/profile 文件,在文件的末尾添加如下命令
PATH=$PATH:/usr/local/mysql:/usr/local/mysql/bin export PATH执行 source /etc/profile 命令让其立即生效。 11. 登录mysql:
mysql -uroot -p在做任何操作之前,mysql 会要求修改 root 的密码,使用以下命令修改密码:
SET PASSWORD = PASSWORD('newpasswd');好了,至此mysql也安装成功了。
我在登录过程中遇到 mysql 报错: ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2) 用以下两种方式分别都能解决,供参考: 1. 执行命令 sudo ln -s /usr/local/mysql/tmp/mysql.sock /tmp/mysql.sock 2. 将连接 mysql 的语句修改成 mysql -h 127.0.0.1 -u root -p
