linux下安装mysql(.tar.gz压缩包方法) |
您所在的位置:网站首页 › g402是什么高速 › linux下安装mysql(.tar.gz压缩包方法) |
前言
对于大众和新手程序员来说,linux可能是一个比较陌生的系统,但是作为开发者又得经常和它打交道。作为后者的我,被安装mysql搞得头可大了,第一次安装mysql,装了一天半,但是没记录。然后第二次安装,又安装了两个小时,为了下次不再浪费时间,也为了能帮助到其他同伙,所以特别做了这次记录。 准备工作linux虚拟机或linux服务器和远程连接工具等就不说了。 我们先下载mysql的安装包, 下载地址:https://downloads.mysql.com/archives/community/ 1.1 检查是否已经安装,执行命令 rpm -qa | grep mysql如果已经存在,则执行删除命令 rpm -e --nodeps 名字1.2 查找是否有mysql相关的进程,执行命令 ps -ef|grep mysql | grep -v grep ps -ef|grep mysqld | grep -v grep如果有,则执行下面的命令将其杀死 kill -9 进程号1.3 查找mysql相关的文件,执行命令 find / -name mysql如果有,将其删除或者重命名,自行百度mv命令的用法 2、安装操作2.1 将压缩包用远程连接工具上传到linux上,我是传到/opt/下的,如果是新手,建议和我一样,免得出问题。使用解压命令解压 tar -zxvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz2.2 解压之后会多出一个文件夹mysql-5.7.17-linux-glibc2.5-x86_64,重命名为 mysql-5.7.17 。 mv mysql-5.7.17-linux-glibc2.5-x86_64 mysql-5.7.17注意:如果已经存在mysql这个目录,最好将其移动到别的地方或者重命名,和我保持一致,避免一些不必要的问题。 2.3 创建mysql用户组和mysql用户 cat /etc/group | grep mysql #类似 mysql:x:490: cat /etc/passwd | grep mysql #类似 mysql:x:496:490::/home/mysql:/bin/bash以上为存在的情况,如无,执行添加命令: groupadd mysql useradd -r -g mysql mysql注意:useradd -r参数表示mysql用户是系统用户,不可用于登录系统 2.4 创建data,数据存放目录 cd mysql-5.7.25 mkdir data修改权限 chown -R mysql.mysql /opt/mysql-5.7.172.5 创建配置文件 在/opt/mysql-5.7.17/support-files目录下创建my_default.cnf,创建命令 cd /opt/mysql-5.7.17/support-files touch my_default.cnf在文件中复制以下内容(如果你的安装目录和我不一样,那么这些目录要和你自己的目录对应才行): [mysqld] sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES basedir = /opt/mysql-5.7.17 datadir = /opt/mysql-5.7.17/data port = 3306 socket = /tmp/mysql.sock character-set-server=utf8 log-error = /opt/mysql-5.7.17/data/mysqld.log pid-file = /opt/mysql-5.7.17/data/mysqld.pidlinux下shift+insert是粘贴,Ctrl+insert是复制 拷贝,如果提示是否覆盖,y cp support-files/my_default.cnf /etc/my.cnf2.6 初始化 cd /opt/mysql-5.7.17 ./bin/mysqld --initialize --user=mysql --basedir=/opt/mysql-5.7.17/ --datadir=/opt/mysql-5.7.17/data/2.6.1 如果报下面的错误: ./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory那就先执行下面的命令再执行上面的初始化命令 yum install -y libaio2.7 初始密码 初始化之后到日志中去查看初始密码,等会登录用。日志在 /opt/mysql-5.7.17/data/mysqld.log可以用cat 命令查看 cat /opt/mysql-5.7.17/data/mysqld.loga8?DQir=T+k+就是密码,查看自己的并且记下来 [Note] A temporary password is generated for root@localhost: a8?DQir=T+k+如果在data下面没有找到mysqld.log日志文件,有可能是2.5步中配置文件的内容有问题,去检查/etc/my.cnf这个文件,看看配置的那些路径是不是正确的,或者你的安装目录和我不一样,但是配置文件却没有改 2.8 启动 把启动脚本放到开机初始化目录 cp support-files/mysql.server /etc/init.d/mysql启动命令 service mysql start如果启动报错 Starting MySQL.2021-06-21T04:56:48.691659Z mysqld_safe The file /usr/local/mysql/bin/mysqld does not exist or is not executable. Please cd to the mysql installation directory and restart this script from there as follows: ./bin/mysqld_safe& See http://dev.mysql.com/doc/mysql/en/mysqld-safe.html for more information The server quit without updating PID file (/opt/mysql-5.7.1[FAILED]ysqld.pid).这是因为:在MySQL 5.7中,安全性提升,要求切换到软件安装目录,来启动数据库,所以得换种方式启动 cd /opt/mysql-5.7.17 ./bin/mysqld_safe --defaults-file=/etc/my.cnf &2.9 登录,刚刚日志中的密码 ./bin/mysql -u root -p每次都要这样来登录,有点麻烦,可以这样做 ln -s /opt/mysql-5.7.17/bin/mysql /usr/bin以后登录就可以直接用mysql命令登录了 mysql -uroot -p2.10 修改密码 set password=password('123456'); flush privileges;2.11 设置远程连接 grant all privileges on *.* to root@'%' identified by 'root'; flush privileges;重启mysql才能生效。 service mysql stop service mysql start service mysql restart 3. 完善3.1 启动问题 在2.8步启动过程中,如果需要需要./bin/mysqld_safe --defaults-file=/etc/my.cnf &这种方式启动,那么我们可以简单的处理一下, mkdir -p /usr/local/mysql/bin ln -s /opt/mysql-5.7.17/bin/mysqld /usr/local/mysql/bin/mysqld 4. 最后自己也是在网上找的参考资料,然后碰到了各种问题,所以把自己的问题记录了下来。 主要参考 https://blog.csdn.net/lch520baby/article/details/89081306 https://blog.csdn.net/eagle89/article/details/78411184 http://blog.itpub.net/26506993/viewspace-2136837/ https://blog.csdn.net/u010587433/article/details/47291317 https://blog.csdn.net/emily_and_cat/article/details/108712222 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |