Linux中mysql的安装
1.检查是否已安装过mysql
rpm -qa | grep mysql
没有输出表示没有安装过,若有输出则执行以下命令删除
rpm -e --nodeps 软件包名
若是centos7,系统自带Mariadb,验证并删除
rpm -qa | grep mariadb rpm -e --nodeps 软件包名
也可通过yum remove命令删除
2.创建mysql用户
useradd mysql -r -s /sbin/nologin
设置为系统用户且不可登录,自动创建mysql用户组
3.从官网下载mysql安装包
官网地址 https://dev.mysql.com/downloads/mysql/
选择合适的版本,我选择的是linux 5.7.30 64位
点击Download按钮到下载界面
复制链接地址,通过wget命令将安装包下载到/usr/local/src/目录下
cd /usr/local/src/ wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
4.解压并修改目录名称为mysql
将解压后的mysql目录放到/usr/local/目录下
tar -xzvf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz mv mysql-5.7.30-linux-glibc2.12-x86_64 /usr/local/mysql
5.创建mysql数据目录并更改属性
mkdir /usr/local/mysql/data chown -R mysql:mysql /usr/local/mysql chmod -R 755 /usr/local/mysql
6.编译安装并初始化mysql
需要提前安装依赖包libaio-devel
--basedir指定数据库服务程序目录,--datadir指定真实数据文件目录
yum install libaio-devel -y cd /usr/local/mysql/bin ./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
初始化完成后,务必记住输出日志末尾的密码,即root@localhost:后的字符串,这是数据库管理员临时密码,后面初次登录后需要修改密码。
7.编辑配置文件my.cnf
vim /etc/my.cnf
[mysqld] datadir=/usr/local/mysql/data port = 3306 sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES symbolic-links=0 max_connections=600 innodb_file_per_table=1 lower_case_table_names=1
8.启动mysql服务器
/usr/local/mysql/support-files/mysql.server start
出现 SUCCESS! 字样则表示启动成功
如果出现如下提示信息
Starting MySQL... ERROR! The server quit without updating PID file
查看是否存在mysql和mysqld的服务,如果存在,则结束进程,再重新执行启动命令
#查询服务 ps -ef | grep mysql ps -ef | grep mysqld #结束进程 kill -9 PID #启动服务 /usr/local/mysql/support-files/mysql.server start
如果还是报错,编辑 /etc/init.d/mysql,找到 start 模块,添加 --user=root 到 mysqld_safe 即可
9.添加客户端命令软连接
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
10.登录mysql,修改密码
初始密码为步骤6生成的临时密码
mysql -u root -p Enter password: mysql>set password for root@localhost = password('yourpass');
11.设置开机自动启动
#将服务文件拷贝到init.d下,并重命名为mysqld cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld #赋予可执行权限 chmod +x /etc/init.d/mysqld #重启服务 service mysqld restart #设置开机自启 chkconfig mysqld on
至此,可以通过mysql命令连接数据库了
mysql -u root -p