Centos7安装mydql之后已经自动让mariadb代替--mysql修改root密码
2017-09-14 13:23
681 查看
不想装oracle,心想装个mysql轻便一点,我用的linux版本是Fedora24.执行完yum安装命令后发现竟然无法启动错误提示如下
[java] view
plain copy
print?
[root@localhost ~]# systemctl start mysql.service
Failed to start mysql.service: Unit mysql.service not found.
查了半天资料,终于了解到MariaDB代替了mysql数据库,MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。
因此用上述命令启动不起来,正确的方法如下
[java] view
plain copy
print?
# yum install mariadb-server -y //如果已安装可以省略
# systemctl start mariadb.service //启动服务
# systemctl enable mariadb.service //开机启动服务
# mysql -u root -p //登录mysql
---------------------------------------------------------------------------------------------------不华丽的分割线--------------------------------------------------------------------------------------------------------
如果你不想用这个方法解决这个问题,还有一个方法,不过个人并不推荐此方法,这个方法就是在 /etc/systemd/system/mysqld.service 添加Unit,既然错误提示找不到Unit那我们添加一个就好了。在 /etc/systemd/system/mysqld.service下添加如下内容
[java] view
plain copy
print?
[Unit]
Description=MySQL Server
After=network.target
[Service]
ExecStart=/usr/bin/mysqld --defaults-file=/etc/mysql/my.cnf --datadir=/var/lib/mysql --socket=/var/run/mysqld/mysqld.sock User=mysql
Group=mysql
WorkingDirectory=/usr
[Install]
WantedBy=multi-user.target
然后运行
[java] view
plain copy
print?
systemctl daemon-reload
刷新缓存
这样我们就可以用
[java] view
plain copy
print?
systemctl start mysql.service
启动mysql了
这第二种方法未经本人亲自验证,不知是否有效,如果有效的话,还希望反馈。谢谢。之所以把他贴出来,是因为觉得这是一个解决问题的思路。
修改的用户都以root为列。
一、拥有原来的myql的root的密码;
方法一:
在mysql系统外,使用mysqladmin
# mysqladmin
-u root -p password "test123"
Enter password: 【输入原来的密码】
方法二:
通过登录mysql系统,
# mysql
-uroot -p
Enter password: 【输入原来的密码】
mysql>use
mysql;
mysql> update
user set password=passworD("test") where user='root';
mysql> flush
privileges;
mysql> exit;
二、忘记原来的myql的root的密码;
首先,你必须要有操作系统的root权限了。要是连系统的root权限都没有的话,先考虑root系统再走下面的步骤。
类似于安全模式登录系统,有人建议说是pkill
mysql,但是我不建议哈。因为当你执行了这个命令后,会导致这样的状况:
/etc/init.d/mysqld status
mysqld dead but subsys locked
这样即使你是在安全模式下启动mysql都未必会有用的,所以一般是这样/etc/init.d/mysqld
stop,如果你不幸先用了pkill,那么就start一下再stop咯。
# mysqld_safe
--skip-grant-tables &
&,表示在后台运行,不再后台运行的话,就再打开一个终端咯。
# mysql
mysql> use
mysql;
mysql> UPDATE user SET password=password("test123")
WHERE user='root';
mysql> flush
privileges;
mysql> exit;
##本来mysql是不分大小写的,但是这个是修改的mysql中的mysql数据库的具体的值,要注意到。
[java] view
plain copy
print?
[root@localhost ~]# systemctl start mysql.service
Failed to start mysql.service: Unit mysql.service not found.
查了半天资料,终于了解到MariaDB代替了mysql数据库,MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。
因此用上述命令启动不起来,正确的方法如下
[java] view
plain copy
print?
# yum install mariadb-server -y //如果已安装可以省略
# systemctl start mariadb.service //启动服务
# systemctl enable mariadb.service //开机启动服务
# mysql -u root -p //登录mysql
---------------------------------------------------------------------------------------------------不华丽的分割线--------------------------------------------------------------------------------------------------------
如果你不想用这个方法解决这个问题,还有一个方法,不过个人并不推荐此方法,这个方法就是在 /etc/systemd/system/mysqld.service 添加Unit,既然错误提示找不到Unit那我们添加一个就好了。在 /etc/systemd/system/mysqld.service下添加如下内容
[java] view
plain copy
print?
[Unit]
Description=MySQL Server
After=network.target
[Service]
ExecStart=/usr/bin/mysqld --defaults-file=/etc/mysql/my.cnf --datadir=/var/lib/mysql --socket=/var/run/mysqld/mysqld.sock User=mysql
Group=mysql
WorkingDirectory=/usr
[Install]
WantedBy=multi-user.target
然后运行
[java] view
plain copy
print?
systemctl daemon-reload
刷新缓存
这样我们就可以用
[java] view
plain copy
print?
systemctl start mysql.service
启动mysql了
这第二种方法未经本人亲自验证,不知是否有效,如果有效的话,还希望反馈。谢谢。之所以把他贴出来,是因为觉得这是一个解决问题的思路。
修改的用户都以root为列。
一、拥有原来的myql的root的密码;
方法一:
在mysql系统外,使用mysqladmin
# mysqladmin
-u root -p password "test123"
Enter password: 【输入原来的密码】
方法二:
通过登录mysql系统,
# mysql
-uroot -p
Enter password: 【输入原来的密码】
mysql>use
mysql;
mysql> update
user set password=passworD("test") where user='root';
mysql> flush
privileges;
mysql> exit;
二、忘记原来的myql的root的密码;
首先,你必须要有操作系统的root权限了。要是连系统的root权限都没有的话,先考虑root系统再走下面的步骤。
类似于安全模式登录系统,有人建议说是pkill
mysql,但是我不建议哈。因为当你执行了这个命令后,会导致这样的状况:
/etc/init.d/mysqld status
mysqld dead but subsys locked
这样即使你是在安全模式下启动mysql都未必会有用的,所以一般是这样/etc/init.d/mysqld
stop,如果你不幸先用了pkill,那么就start一下再stop咯。
# mysqld_safe
--skip-grant-tables &
&,表示在后台运行,不再后台运行的话,就再打开一个终端咯。
# mysql
mysql> use
mysql;
mysql> UPDATE user SET password=password("test123")
WHERE user='root';
mysql> flush
privileges;
mysql> exit;
##本来mysql是不分大小写的,但是这个是修改的mysql中的mysql数据库的具体的值,要注意到。
相关文章推荐
- PHP 5.3.0及以上版本已经内置mysqlnd驱动, 所以安装php时并不需要预先安装mysql, 你可以在安装php之后再安装mysql(这与之前版本的php安装顺序差异较大). mysql
- CentOS7安装nginx+php+mysql/mariadb
- Ubuntu15.X和CentOS7之后-MySQL源码编译安装
- centos7安装mysql(MariaDB)
- win10卸载原mysql安装64位mysql5.7并修改root密码
- 如何在fedora23上安装和运行MySQL server (MySQL 已经被MariaDB取代)
- centos7上安装mysql(mariadb)\svnadmin.
- fedora23上安装和运行MySQL server (MySQL 已经被MariaDB取代)
- centos7 安装mariadb(mysql)
- Centos7 安装配置优化mysql(mariadb分支)
- CentOS7安装MySQL5.6.28及其修改密码
- mac pro 安装mysql并且配置my.cnf(添加默认字符集utf8,数据存放路径,修改已经建好的表的默认字符集等)
- centos7 安装mysql(mariadb)
- 解决centos7 中 使用mariadb 安装mysql不成功的问题
- centos7卸载mariadb 安装mysql
- CentOS7 安装 Mysql 5.7,密码查看与修改
- 安装MySQL之后修改编码方式
- centos7 快速安装 mariadb(mysql)
- Centos7安装mysql(mariadb)
- 关于centos7 安装mysql(mariadb)的方式