目录
一、mysql的安装
-
准备工作
- 使用xshell工具的rz命令上传已下载好的 mysql-8.0.13-linux-glibc2.12-x86_64.tar.xz CentOS,默认上传位置上传到 /root 目录下
- 在把压缩包移动到 /usr/local目录下:mv mysql-8.0.13-linux-glibc2.12-x86_64.tar.xz /usr/local
- 切换目录:cd /usr/local
- 执行解压命令:tar -xvf mysql-8.0.13-linux-glibc2.12-x86_64.tar.xz
- 将解压出来的目录改名:mv mysql-8.0.13-linux-glibc2.12-x86_64 mysql
-
创建mysql用户和用户组,并初始化data目录
- 创建用户组(此处名字可以任意):groupadd mysql
- 创建用户(用户名不能改成其他)并指定用户组:useradd mysql -g mysql
- 进入mysql目录:cd mysql
- 在mysql目录下创建data目录:mkdir data
- 指定目录所有者:chown mysql:mysql data
chgrp mysql data
- 切换到mysql目录下初始化data:bin/mysqld --initialize --user=mysql --datadir /usr/local/mysql/data
或者在初始化时就制定安装目录和数据目录,不使用系统推荐目录:basedir指定mysql安装目录,datadir指定data目录
bin/mysqld --initialize --user=mysql -- basedir=/data/mysql --datadir=/data/mysql/data &
- 在初始化时要把初始密码记录下来,后面要用;如果密码已忘记则切换到data目录下执行:rm -rf *,清空data再重新初始化。
-
完成相关配置
- 切换到mysql目录,将mysql加入到服务自启动:cp support-files/mysql.server /etc/init.d/mysql.server
- 查看/etc下是否有my.cnf文件,如果有且内容不为空则将其删除:rm /etc/my.cnf
- 配置my.cnf文件:vim /etc/my.cnf
[mysqld] basedir=/usr/local/mysql datadir=/usr/local/mysql/data
- 配置mysql环境变量 :vim /root/.bash_profile
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin
- 重新加载环境变量配置文件:source /root/.bash_profile
- 启动masql:/etc/init.d/mysql.server start
重启命令:/etc/init.d/mysql.server restart
停止命令:/etc/init.d/mysql.server sop
- 登录mysql:mysql -u root -p
- 修改root密码:alter user user() identified by '123456'
-
使用默认安装,安装完成后想要移动 mysql到自己想要的目录(选做)
- 查看mysql是否处于运行状态:ps -ef | grep mysql
- 如果是则先关闭mysql服务:/etc/init.d/mysql.server sop
- 把myql移动到目的目录(以/data目录为例):mv mysql /data
- 修改/etc/my.cnf 以及 /root/.bash_profile相关配置
二 、在机器上安装两个mysql
- 直接复制当前mysql:cp mysql mysql2 -R
- 为mysql2创建对应的配置文件:vim /etc/my3307.cnf
[mysqld] basedir=/usr/local/mysql2 datadir=/usr/local/mysql2/data port=3307 socket=/tmp/mysql3307.sock mysqlx_port=33070 mysqlx_socket=/tmp/mysqlx33070.sock
- 切换到mysql2修改权限:chown mysql:mysql data -R
- 指定mysql2的配置文件:bin/mysqld --default-file=/etc/my3307.cnf --user=mysql &
备用命令,上面不行就用这个:
/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my3307.cnf --user=mysql &
- 查看3307端口是否被侦听:netstat -an | grep LISTEN
- 登录mysql2:mysql -u root -p -S /tmp/mysql3307.sock