MySQL安装

    xiaoxiao2023-10-06  168

    配置IP地址

    [root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33

    BOOTPROTO=static

    ONBOOT=yes

    IPADDR= # IP地址

    NETMASK= # 子网掩码

    重启网络:

    [root@localhost ~]# ifdown ens33;ifup ens33

    准备源码包

    Ram -ivh mysql-community-5.7.26-1.el7.src.rpm

    搭建YUM源

    [root@localhost ~]# mount /dev/sr0 /mnt

    [root@localhost ~]# vim /etc/yum.repos.d/centos7.repo

    卸载boost

    [root@ localhost ~]# yum -y remove boost-*

    安装bzip2解压工具,解压缩boost_1_59_0.tar.bz2

    [root@localhost SOURCES]# yum install -y bzip2

    [root@localhost SOURCES]# tar -jxvf boost_1_59_0.tar.bz2

    卸载系统自带的mysql

    [root@localhost SOURCES]# yum -y remove mysql*

    [root@localhost SOURCES]# yum -y remove mariadb*

    安装MYSQL依赖包

    [root@localhost SOURCES] ~]# yum install -y cmake make gcc gcc-c++ bison ncurses ncurses-devel

    添加mysql用户和用户组

    [root@localhost SOURCES] ~]# groupadd mysql

    [root@localhost SOURCES] ~]# useradd -M -s /sbin/nologin -r -g mysql mysql 创建mysql数据库存放位置并修改目录权限

    [root@localhost SOURCES] ~]# mkdir -p /data/mysql/{data,log}

    [root@localhost SOURCES] ~]# chown -R mysql:mysql /data/mysql

    解压源码包

    [root@localhost SOURCES] ~]#tar -zxvf mysql-5.7.26.tar.gz

    预编译

    [root@localhost mysql-5.7.26]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

    -DMYSQL_DATADIR=/usr/local/mysql/data \

    -DSYSCONFDIR=/etc \

    -DWITH_MYISAM_STORAGE_ENGINE=1 \

    -DWITH_INNOBASE_STORAGE_ENGINE=1 \

    -DWITH_MEMORY_STORAGE_ENGINE=1 \

    -DWITH_READLINE=1 \

    -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \

    -DMYSQL_TCP_PORT=3306 \

    -DENABLED_LOCAL_INFILE=1 \

    -DWITH_PARTITION_STORAGE_ENGINE=1 \

    -DEXTRA_CHARSETS=all \

    -DDEFAULT_CHARSET=utf8 \

    -DDEFAULT_COLLATION=utf8_general_ci \

    -DDOWNLOAD_BOOST=1 \

    -DWITH_BOOST=/root/boost_1_59_0

    DCMAKE_INSTALL_PREFIX:指定MySQL程序的安装目录,默认/usr/local/mysql

    DEFAULT_CHARSET:指定服务器默认字符集,默认latin1

    DEFAULT_COLLATION:指定服务器默认的校对规则,默认latin1_general_ci

    ENABLED_LOCAL_INFILE:指定是否允许本地执行LOAD DATA INFILE,默认OFF

    WITH_COMMENT:指定编译备注信息

    WITH_xxx_STORAGE_ENGINE:指定静态编译到mysql的存储引擎,MyISAM, MERGE,MEMBER以及CSV四种引擎默认即被编译至服务器,不需要特别指定。

    WITHOUT_xxx_STORAGE_ENGINE:指定不编译的存储引擎

    SYSCONFDIR:初始化参数文件目录

    MYSQL_DATADIR:数据文件目录

    MYSQL_TCP_PORT:服务端口号,默认3306

    MYSQL_UNIX_ADDR:socket文件路径,默认/tmp/mysql.sock

    编译

    [root@localhost mysql-5.7.26]#make -j (指定CPU核心数)

    查看服务器CPU核心数

    [root@localhost mysql-5.7.26]# grep processor /proc/cpuinfo | wc -l

    安装

    [root@localhost mysql-5.7.26]# make install

    修改MySQL目录权限

    [root@localhost mysql-5.7.26]# chown -R mysql:mysql /usr/local/mysql/

    生成my.cnf配置文件

    [root@localhost mysql-5.7.26]# vim /etc/my.cnf

    [mysqld]

    basedir=/usr/local/mysql #mysql安装目录

    datadir=/data/mysql/data #mysql数据存放目录

    port=3306 #mysql监听端口

    socket=/usr/local/mysql/mysql.sock #mysql.sock文件存放目录

    symbolic-links=0 #关闭mysql的符号链接

    character-set-server=utf8 #指定mysql的字符集为utf8

    log-error=/data/mysql/log/mysqld.log #指定mysql的错误日志存放路径

    pid-file=/usr/local/mysql/mysqld.pid #mysql的pid文件存放目录

    生成服务启动脚本

    [root@localhost mysql-5.7.26]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

    [root@localhost mysql-5.7.26]#chmod +x /etc/init.d/mysqld #给脚本添加执行权限

    添加mysqld开机自启动

    [root@localhost mysql-5.7.26]# chkconfig --add mysqld #把mysql添加到系统服务

    [root@localhost mysql-5.7.26]# chkconfig mysqld on #把mysql添加到开机自启动

    [root@localhost mysql-5.7.26]# chkconfig --list mysqld #查看mysql开机自启动状态

    初始化数据库

    如果无法初始化先启动mysql

    [root@localhost mysql-5.7.26]# /usr/local/mysql/bin/mysqld –initialize-insecure --user=mysql \

    –basedir=/usr/local/mysql –datadir=/data/mysql/data

    rm -rf /data/mysql/data/

    启动服务

    [root@localhost mysql-5.7.26]# /etc/init.d/mysqld start

    添加path路径

    [root@localhost mysql-5.7.26]# vim /etc/profile 添加下面2行 在文件的结尾

    export MYSQL_HOME=/var/lib/mysql

    export PATH= P A T H : PATH: PATH:MYSQL_HOME/bin

    使修改生效

    [root@localhost mysql-5.7.26]# source /etc/profile

    或者:

    [root@localhost mysql-5.7.26]# ln -s /usr/local/mysql/bin/* /usr/local/bin/

    修改MySQL密码

    [root@localhost mysql-5.7.26]# mysqladmin -u root password “123456”

    登陆mysql

    [root@localhost ~]# mysql -uroot -p123456

    mysql> show databases;

    linux中忘记密码的方法

    首先拿到操作系统的root权限,然后kill掉Mysql服务或者手动stop掉,这里我推荐使用手动stop;

    1 systemctl stop mysqld然后执行

    1 mysqld_safe –skip-grant-tables &,表示在后台运行,不再后台运行的话,就再打开一个终端吧。

    接着登陆MySQL修改密码

    1 mysql2 mysql> use mysql;3 mysql> UPDATE user SET password=password(“test123”) WHERE user=‘root’; 4 mysql> exit; 注意:如果Mysql的版本是5.7及以上的话update语句如下:

    1 mysql> update user set authentication_string=password(“test”) where user=‘root’;mysql> quit

    [root@mysql-srv1 ~]# jobs -l

    1+ 1304 Running mysqld_safe --skip-grant-tables &

    [root@mysql-srv1 ~]# kill -9 1304

    [root@mysql-srv1 ~]# systemctl start mysqld

    查看MySQL进程

    [root@localhost ~]# ps aux | grep mysql

    root 2964 0.0 0.0 113308 1624 pts/0 S 18:29 0:00 /bin/sh /usr/local/bin/mysqld_safe --skip-grant-tables

    mysql 3145 0.0 5.1 1768060 197360 pts/0 Sl 18:29 0:03 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql –datadir=/data/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin –user=mysql --skip-grant-tables --log-error=/data/mysql/log/mysqld.log –pid-file=/usr/local/mysql/mysqld.pid --socket=/usr/local/mysql/mysql.sock –port=3306

    root 3269 0.0 0.0 112720 980 pts/0 S+ 21:45 0:00 grep --color=auto mysql

    [root@localhost ~]# ps aux | grep mysql | grep -v “grep”

    root 2964 0.0 0.0 113308 1624 pts/0 S 18:29 0:00 /bin/sh /usr/local/bin/mysqld_safe --skip-grant-tables

    mysql 3145 0.0 5.1 1768060 197360 pts/0 Sl 18:29 0:03 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/mysql/data –plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --skip-grant-tables –log-error=/data/mysql/log/mysqld.log --pid-file=/usr/local/mysql/mysqld.pid –socket=/usr/local/mysql/mysql.sock --port=3306

    查看MySQL端口号

    [root@localhost ~]# netstat -anpt

    Active Internet connections (servers and established)

    Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

    tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1010/sshd

    tcp 0 0 192.168.100.40:22 192.168.100.20:51634 ESTABLISHED 1731/sshd: root@pts

    tcp6 0 0 :::3306 ::: LISTEN 3145/mysqld

    tcp6 0 0 :::22 ::: LISTEN 1010/sshd

    [root@localhost ~]# netstat -anpt | grep “3306”

    tcp6 0 0 :::3306 ::: LISTEN 3145/mysqld

    另外一种

    [root@localhost ~]# ss -anpt | grep “3306”

    LISTEN 0 80 :::3306 ::: users:((“mysqld”,pid=3145,fd=28))

    欢迎使用Markdown编辑器

    你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。

    新的改变

    我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:

    全新的界面设计 ,将会带来全新的写作体验;在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编辑区域直接展示;全新的 KaTeX数学公式 语法;增加了支持甘特图的mermaid语法1 功能;增加了 多屏幕编辑 Markdown文章功能;增加了 焦点写作模式、预览模式、简洁写作模式、左右区域同步滚轮设置 等功能,功能按钮位于编辑区域与预览区域中间;增加了 检查列表 功能。

    功能快捷键

    撤销:Ctrl/Command + Z 重做:Ctrl/Command + Y 加粗:Ctrl/Command + B 斜体:Ctrl/Command + I 标题:Ctrl/Command + Shift + H 无序列表:Ctrl/Command + Shift + U 有序列表:Ctrl/Command + Shift + O 检查列表:Ctrl/Command + Shift + C 插入代码:Ctrl/Command + Shift + K 插入链接:Ctrl/Command + Shift + L 插入图片:Ctrl/Command + Shift + G

    合理的创建标题,有助于目录的生成

    直接输入1次#,并按下space后,将生成1级标题。 输入2次#,并按下space后,将生成2级标题。 以此类推,我们支持6级标题。有助于使用TOC语法后生成一个完美的目录。

    如何改变文本的样式

    强调文本 强调文本

    加粗文本 加粗文本

    标记文本

    删除文本

    引用文本

    H2O is是液体。

    210 运算结果是 1024.

    插入链接与图片

    链接: link.

    图片:

    带尺寸的图片:

    居中的图片:

    居中并且带尺寸的图片:

    当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。

    如何插入一段漂亮的代码片

    去博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片.

    // An highlighted block var foo = 'bar';

    生成一个适合你的列表

    项目 项目 项目 项目1项目2项目3 计划任务 完成任务

    创建一个表格

    一个简单的表格是这么创建的:

    项目Value电脑$1600手机$12导管$1

    设定内容居中、居左、居右

    使用:---------:居中 使用:----------居左 使用----------:居右

    第一列第二列第三列第一列文本居中第二列文本居右第三列文本居左

    SmartyPants

    SmartyPants将ASCII标点字符转换为“智能”印刷标点HTML实体。例如:

    TYPEASCIIHTMLSingle backticks'Isn't this fun?'‘Isn’t this fun?’Quotes"Isn't this fun?"“Isn’t this fun?”Dashes-- is en-dash, --- is em-dash– is en-dash, — is em-dash

    创建一个自定义列表

    Markdown Text-to- HTML conversion tool Authors John Luke

    如何创建一个注脚

    一个具有注脚的文本。2

    注释也是必不可少的

    Markdown将文本转换为 HTML。

    KaTeX数学公式

    您可以使用渲染LaTeX数学表达式 KaTeX:

    Gamma公式展示 Γ ( n ) = ( n − 1 ) ! ∀ n ∈ N \Gamma(n) = (n-1)!\quad\forall n\in\mathbb N Γ(n)=(n1)!nN 是通过欧拉积分

    Γ ( z ) = ∫ 0 ∞ t z − 1 e − t d t   . \Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\,. Γ(z)=0tz1etdt.

    你可以找到更多关于的信息 LaTeX 数学表达式here.

    新的甘特图功能,丰富你的文章

    Mon 06 Mon 13 Mon 20 已完成 进行中 计划一 计划二 现有任务 Adding GANTT diagram functionality to mermaid 关于 甘特图 语法,参考 这儿,

    UML 图表

    可以使用UML图表进行渲染。 Mermaid. 例如下面产生的一个序列图::

    张三 李四 王五 你好!李四, 最近怎么样? 你最近怎么样,王五? 我很好,谢谢! 我很好,谢谢! 李四想了很长时间, 文字太长了 不适合放在一行. 打量着王五... 很好... 王五, 你怎么样? 张三 李四 王五

    这将产生一个流程图。:

    链接 长方形 圆 圆角长方形 菱形 关于 Mermaid 语法,参考 这儿,

    FLowchart流程图

    我们依旧会支持flowchart的流程图:

    Created with Raphaël 2.2.0 开始 我的操作 确认? 结束 yes no 关于 Flowchart流程图 语法,参考 这儿.

    导出与导入

    导出

    如果你想尝试使用此编辑器, 你可以在此篇文章任意编辑。当你完成了一篇文章的写作, 在上方工具栏找到 文章导出 ,生成一个.md文件或者.html文件进行本地保存。

    导入

    如果你想加载一篇你写过的.md文件或者.html文件,在上方工具栏可以选择导入功能进行对应扩展名的文件导入, 继续你的创作。


    mermaid语法说明 ↩︎

    注脚的解释 ↩︎

    最新回复(0)