1.下载mysql

wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.11-el7-x86_64.tar.gz

2.检查linux是否安装mariadb数据库,mariadb数据库是mysql的分支

yum list installed | grep mariadb

如果linux中安装mariadb数据库,可能与安装mysql数据库发生冲突

yum -y remove mariadb   (mariadb是前面检测出来的软件包)

3.解压

cd 压缩包的位置

tar -zxvf mysql.*.*.*.2.1.tar.gz -C /usr/local  (指定解压位置)

4.在/etc文件夹下创建my.cnf文件

[mysqld]

user=mysql

log-error=/var/log/mysql/mysqld.log //错误日志的路径

basedir=/usr/local/mysql-5.7.22 //mysql的安装路径

datadir=/usr/local/mysql-5.7.22/data //数据路径

pid-file=/usr/local/mysql-5.7.22/data/mysqld_pid

5.复制启动脚本文件mysql.server到/etc/init.d/mysqld

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

6.更改/etc/init.d/mysqld中的内容为自己安装的mysql的位置

vim /etc/init.d/mysqld

basedir=/usr/local/mysql-5.7.22 //mysql的安装路径

datadir=/usr/local/mysql-5.7.22/data //数据路径

7.将解压得到的文件夹重命名

cd 解压后的文件夹位置(mysql+版本号(假设为mysql.1.2))

mv mysql.*.*.*.2.1 mysql.2.1

8.在mysql.1.2下创建一个文件夹data

cd mysql.2.1

mkdir data

9.添加用户(在mysql.2.1目录下)

useradd mysql

10.切换到mysql.2.1/bin目录下执行

./mysqld --initialize --user=mysql --datadir=/usr/local/mysql.2.1/data --basedir=/usr/local/mysql.2.1

注意:会得到一个初始化密码一定要记住,要不然连不上数据库

11.切换到mysql.2.1/bin目录下执行

./mysql_ssl_rsa_setup  --datadir=/usr/local/mysql.2.1/data

12.更改mysql.2.1整个文件夹的权限

chown -R mysql: mysql /usr/local/mysql.2.1

13.启动mysql服务

./mysqld_safe &  (&表示后台启动)

14.切换到mysql.2.1/bin目录下执行登陆

./mysql -uroot -p

输入第七步生成的临时密码

15.执行sql语句show database,会出现错误,提示修改密码

alter user 'root'@'localhost' identified by '123456'

16.授权远程访问

grant all privileges on *.* to root@'%' identified by '123456'

第一个*号表示所有数据库名

第二个*号表示所有数据库表

root@'%':root 表示用户名  %表示ip地址,比如root@localhost,root@192.168.129.189

17.执行刷新权限命令

flush privileges

错误

./mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

yum install  libaio.so.1

linux下配置mysql 与错误解决的更多相关文章

  1. linux下配置mysql默认编码utf8

    linux下配置mysql默认编码utf8 下面是需要在对应地方加入的配置 [client] default-character-set=utf8 [mysqld] character-set-ser ...

  2. Linux下忘记MySQL密码的解决方法和输入mysqld_safe --skip-grant-tables &后无法进入MySQL的解决方法

    在Linux下忘记MySQL密码后我们可以通过一个mysql的参数--skip-grant-tables &轻松解决这个问题 亲测在CentOS有效 其中 --skip-grant-table ...

  3. linux 下配置mysql区分大小写(不区分可能出现找不到表的情况)怎么样使用yum来安装mysql

    Linux 默认情况下,数据库是区分大小写的:因此,要将mysql设置成不区分大小写 在my.cof 设置 lower_case_table_names=1(1忽略大小写,0区分大小写) 检查方式:在 ...

  4. Linux下配置MySQL需要注意的几点

    1.为mysql加上连接数,linux下最大能允许8000个mysql连接. 经验下,设置为3000 [mysqld] max_connections=3000

  5. Linux下配置MySQL主从复制

    一.环境准备 本次准备两台Linux主机,操作系统都为CentOS6.8, 都安装了相同版本的MySQL.(MySQL5.7). 主从服务器的防火墙都开启了3306端口. 相关信息如下: [主服务器] ...

  6. Linux下忘记MySQL密码的解决办法

    一.使用免密码登录 1.使用 #find / -name my.cfg 找到mysql配置文件 2.vim /etc/mysql/my.cfg (我的配置文件是这个路径,每个人的路径可能有所不同,用f ...

  7. linux下忘记mysql root密码解决办法

    vi /etc/my.cnf    #编辑文件,找到[mysqld],在下面添加一行skip-grant-tables [mysqld] skip-grant-tables :wq!  #保存退出 s ...

  8. Linux下配置Mysql允许远程访问

    操作非常简单,就5步骤,如下: 1.进入 mysql: ? 1 /usr/local/mysql/bin/mysql -u root -p 2.使用 mysql库 : ? 1 use mysql; 3 ...

  9. Linux下配置mysql远程访问

    1 编辑mysql的配置文件 mysqld.cnf root@iZwz99xkrnh5xye3zgi4btZ:~# vi /etc/mysql/mysql.conf.d/mysqld.cnf 2 把  ...

随机推荐

  1. async await 的使用。 其实就是和then一样,只不过改变了链式写法

    这样写显得更加舒服.

  2. char 类型的操作函数

    1.内存充填 void *memset(void *s,int ch,size_t n); 是由C Run-time Library提供的提供的函数,作用是在一段内存块中填充某个给定的值,它是对较大的 ...

  3. python+requests+excel+unittest+ddt接口自动化数据驱动并生成html报告

    1.环境准备: python3.6 requests xlrd openpyxl HTMLTestRunner_api 2.目前实现的功能: 封装requests请求方法 在excel填写接口请求参数 ...

  4. Spring框架的第三天

    ## Spring框架的第三天 ## ---------- **课程回顾:Spring框架第二天** 1. IOC的注解方式 * @Value * @Resource(name="" ...

  5. [Android] TextView上同时显示图标和文字

    需求场景 +----------------------------+ | Icon TEXT | +----------------------------+ 当然,可以使用LineLayout,包 ...

  6. url的参数解析成key-value

    function urlController(url) { var _url = url.split("?")[1]; if(!_url){ return {}; } var wi ...

  7. swapper_pg_dir主内核页表、init和kthreadd、do_fork时新建子进程页表、vmalloc与kmalloc

    都是以前看到一个点扯出的很多东西,当时做的总结,有问题欢迎讨论,现在来源难寻,侵删! 1.Init_task.idle.init和kthreadd的区别和联系 idle进程其pid=0,其前身是系统创 ...

  8. js 清空html input file的值

    在做上传图片预览时,利用input onchange事件触发函数,但是type=file时,一定记得新建要清空原来的图片,因为原来的图片还存在在input里面,再选重复的图片没有change,故不会触 ...

  9. springmvc+hibernate在实体类中设置外键

    1.表User id主键,username,password,dept... 表Attendence id主键,uid外键,time... @ManyToOne @JoinColumn(name = ...

  10. *(volatile int *)解读

    #def ine reg_gpio_ctrl *(volatile int *)(ToVirtual(GPIO_REG_CTRL)) #define A (*(volatile unsigned lo ...