您现在的位置是:亿华云 > 系统运维
Linux下MySQL 8.0安装配置
亿华云2025-10-09 09:05:15【系统运维】0人已围观
简介1、编译安装MySQL8.0版本信息#cat/etc/redhat-releaseCentOSLinuxrelease7.5.1804(Core) 安装依赖包yum-yinstallwg
1、装配置编译安装MySQL8.0
版本信息
#cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core)安装依赖包
yum -y install wget cmake gcc gcc-c++ ncurses ncurses-devel libaio-devel openssl openssl-devel rpm -qa |grep libaio yum install libaio libaio-devel下载源码包
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-boost-8.0.12.tar.gz创建用户和建立数据目录并赋予用户目录权限
groupadd mysql useradd -r -g mysql -s /sbin/nologin mysql mkdir -p /usr/local/mysql mkdir -p /data/mysql chown -R mysql.mysql /usr/local/mysql chown -R mysql.mysql /data/mysql chmod -R 755 /usr/local/mysql/ chmod -R 755 /data/mysql/解压并开始安装
tar -zxf mysql-boost-8.0.12.tar.gz配置
cd mysql-8.0.12 cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DMYSQL_DATADIR=/data/mysql \ -DSYSCONFDIR=/etc \ -DMYSQL_TCP_PORT=3306 \ -DWITH_BOOST=~/mysql-8.0.12/boost \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DENABLED_LOCAL_INFILE=ON \ -DWITH_INNODB_MEMCACHED=ON \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_FEDERATED_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \ -DWITH_PERFSCHEMA_STORAGE_ENGINE=1配置参数说明:
CMAKE_INSTALL_PREFIX :指定基础安装目录
MYSQL_DATADIR :指定数据目录
SYSCONFDIR=/etc :指定配置文件扫描目录
MYSQL_TCP_PORT :指定端口号
WITH_BOOST :指定boost所在目录
DEFAULT_CHARSET :指定默认字符集
DEFAULT_COLLATION :指定默认排序规则
ENABLED_LOCAL_INFILE=ON :是装配置否为load data infile启用local
WITH_INNODB_MEMCACHED=ON :是否生成memcached共享库
编译&安装
make && make install初始化数据库
mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql建立配置文件
cat > /etc/my.cnf <<EOF [client] port=3306 socket=/tmp/mysql.sock default-character-set=utf8 #user=root #password=123 [mysqld] server-id=1 #skip-grant-tables port=3306 user=mysql max_connections=200 socket=/tmp/mysql.sock basedir=/usr/local/mysql datadir=/data/mysql pid-file=/data/mysql/mysql.pid init-connect=SET NAMES utf8 character-set-server=utf8 default-storage-engine=INNODB log_error=/data/mysql/mysql-error.log slow_query_log_file=/data/mysql/mysql-slow.log [mysqldump] quick max_allowed_packet=16M EOF配置环境变量
echo "PATH=/usr/local/mysql/bin:$PATH" >> /etc/profile source /etc/profile配置启动脚本
cp ../mysql-8.0.12/support-files/mysql.server /etc/init.d/mysqld vim /etc/init.d/mysqld chmod +x /etc/init.d/mysqld /etc/init.d/mysqld startcentos7系统自启动脚本
cat /usr/lib/systemd/system/mysqld.service [Unit] Description=mysql server daemon Documentation=man:mysql(8) Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html After=network.target After=syslog.target [Install] WantedBy=multi-user.target [Service] User=mysql Group=mysql Type=notify TimeoutSec=0 PermissionsStartOnly=true ExecStart=/usr/local/mysql/bin/mysqld $MYSQLD_OPTS LimitNOFILE = 10000 Restart=always RestartPreventExitStatus=1 Environment=MYSQLD_PARENT_PID=1 PrivateTmp=false启动MySQL
systemctl start mysqld.service修改root密码:使用WITH指定认证方式
mysql -uroot ALTER USER root@localhost IDENTIFIED WITH mysql_native_password BY 你的云服务器提供商密码; ALTER USER root@localhost IDENTIFIED WITH caching_sha2_password BY 你的密码;查看密码字段和加密方式
select host, user, authentication_string, plugin from user;2、yum存储库安装MySQL
wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm yum localinstall mysql80-community-release-el7-1.noarch.rpm yum repolist enabled|grep "mysql.*-community.*" yum repolist all|grep mysql yum install mysql-community-server systemctl enable mysqld systemctl start mysqld netstat -lntup|grep 3306查看随机生成的企商汇装配置密码
grep temporary password /var/log/mysqld.logmysql -uroot -p修改密码,密码必须要由大小写字母、数字和特性字符组成
装配置alter user root@localhost identified by PJY@123.com;select version();很赞哦!(5355)
相关文章
- 尽量不要在域名中出现特殊字符,这样的域名很容易导致访问者输入错误,同时给人留下不专业的印象,降低网站的可信度,并流失大量潜在客户。
- 一次和公司技术总监的聊天……
- 时薪10K的高级程序猿教你如何用Python一步步来搭建一个区块链
- 倾听程序员的心声真的很重要
- 要如何了解反向解析和域名解析?新手该怎么去操作?
- 小200行Python代码做了一个换脸程序
- 初识Python:全局、局部和非局部变量(带示例)
- 十大手机厂商共推快应用标准
- 3、不明先知,根据相关征兆预测可能发生的事件,以便提前做好准备,赶紧注册相关域名。;不差钱域名;buchaqian抢先注册,就是这种敏感类型。预言是最敏感的状态。其次,你应该有眼力。所谓眼力,就是善于从社会上时不时出现的各种热点事件中获取与事件相关的域名资源。眼力的前提是对域名领域的熟悉和丰富的知识。
- 程序员如果没有较强的自学能力,建议还是趁早转行