• 关于linux-Centos 7下mysql 5.7.9的rpm包的安装方式 (转)


    操作系统:Centos 7.1

    mysql数据库版本:mysql5.7.9

    mysql官方网站:http://www.mysql.com

    ------------------------------------------

    1、安装新版mysql之前,我们需要将系统自带的mariadb-lib卸载

    [root@5201351 ~]# rpm -qa|grep mariadb
    mariadb-libs-5.5.41-2.el7_0.x86_64
    [root@5201351 ~]# rpm -e mariadb-libs-5.5.41-2.el7_0.x86_64 --nodeps

    2、到mysql的官网下载最新版mysql的rpm集合包:mysql-5.7.9-1.el7.x86_64.rpm-bundle.tar

    3、上传mysql-5.7.9-1.el7.x86_64.rpm-bundle.tar到linux服务器,并解压tar包

    4、其中最简单的安装mysql-server服务,只需要安装如下4个软件包即可,我们可以使用rpm -ivh命令进行安装

    mysql-community-common-5.7.9-1.el7.x86_64.rpm
    mysql-community-libs-5.7.9-1.el7.x86_64.rpm --(依赖于common)
    mysql-community-client-5.7.9-1.el7.x86_64.rpm --(依赖于libs)
    mysql-community-server-5.7.9-1.el7.x86_64.rpm --(依赖于client、common)

    5、接下来是初始化数据库,我们使用如下几条命令均可,效果都是一样的

    [root@5201351 ~]# mysql_install_db --datadir=/var/lib/mysql   //必须指定datadir,执行后会生成~/.mysql_secret密码文件
    [root@5201351 ~]# mysqld --initialize                         //新版的推荐此方法,执行生会在/var/log/mysqld.log生成随机密码

    6、更改mysql数据库目录的所属用户及其所属组,然后启动mysql数据库

    [root@5201351 ~]# chown mysql:mysql /var/lib/mysql -R
    [root@5201351 ~]# systemctl start mysqld.service            //启动mysql数据库服务

    7、根据第5步中的密码登录到mysql,更改root用户的密码,新版的mysql在第一次登录后更改密码前是不能执行任何命令的

    [root@5201351 ~]# mysql -uroot -p')j#)=uRig4yJ'
    mysql> set password=password('www.cnblogs.com/5201351');

    8、最后我们还可以根据实际情况创建用户,及作权限分配

    mysql> create user 'root'@'192.168.100.2' identified by 'QQ5201351'; 
    mysql> GRANT ALL PRIVILEGES ON dbname.* to 'root'@'192.168.100.2';
    mysql> flush privileges

    ==============================================

    最后需要特别提醒注意的一点是,新版的mysql数据库下的user表中已经没有Password字段了,

    而是将加密后的用户密码存储于authentication_string字段

    尊重别人的劳动成果 转载请务必注明出处:http://www.cnblogs.com/5201351/p/4912614.html

    http://www.cnblogs.com/5201351/p/4912614.html

    安装完mysql 之后,登陆以后,不管运行任何命令,总是提示这个

    step 1: SET PASSWORD = PASSWORD('your new password');
    或 update user set authentication_string=password("your_new_password") where user="root";

    step 2: ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;

    step 3: flush privileges;

    完成以上三步退出再登,使用新设置的密码就行了,以上除了红色的自己修改成新密码外,其他原样输入即可

    参考1: https://dev.mysql.com/doc/refman/5.6/en/alter-user.html

    参考2: http://dev.mysql.com/doc/refman/5.7/en/password-expiration-policy.html

    参考3: http://stackoverflow.com/questions/33467337/reset-mysql-root-password-using-alter-user-statement-after-install-on-mac

    http://www.cnblogs.com/debmzhang/p/5013540.html

    CentOS 7继承了RHEL 7的新的特性,例如强大的systemctl,而systemctl的使用也使得以往系统服务的/etc/init.d的启动脚本的方式就此改变,也大幅提高了系统服务的运行效率。但服务的配置和以往也发生了极大的不同,说实在的,变的简单而易用了许多。

    下面我们以利用forever来实现Node.js项目自启动为例,初探CentOS 7的systemctl。

    前提:Node.js环境已配置成功,forever包安装成功,有一个能跑的Node.js程序。

    CentOS 7的服务systemctl脚本存放在:/usr/lib/systemd/,有系统(system)和用户(user)之分,像需要开机不登陆就能运行的程序,还是存在系统服务里吧,即:/usr/lib/systemd/system目录下

    每一个服务以.service结尾,一般会分为3部分:[Unit]、[Service]和[Install],我写的这个服务用于开机运行Node.js项目,具体内容如下:

    [Unit]
    Description=xiyoulibapi
    After=network.target remote-fs.target nss-lookup.target
     
    [Service]
    Type=forking
    PIDFile=/node.js/pid
    ExecStart=/usr/local/bin/forever start /node.js/xiyoulib/bin/www
    ExecReload=/usr/local/bin/forever restart /node.js/xiyoulib/bin/www
    ExecStop=/usr/local/bin/forever stop /node.js/xiyoulib/bin/www
    PrivateTmp=true
     
    [Install]
    WantedBy=multi-user.target

    [Unit]部分主要是对这个服务的说明,内容包括Description和After,Description用于描述服务,After用于描述服务类别

    [Service]部分是服务的关键,是服务的一些具体运行参数的设置,这里Type=forking是后台运行的形式,PIDFile为存放PID的文件路径,ExecStart为服务的具体运行命令,ExecReload为重启命令,ExecStop为停止命令,PrivateTmp=True表示给服务分配独立的临时空间,注意:[Service]部分的启动、重启、停止命令全部要求使用绝对路径,使用相对路径则会报错!

    [Install]部分是服务安装的相关设置,可设置为多用户的

    服务脚本按照上面编写完成后,以754的权限保存在/usr/lib/systemd/system目录下,这时就可以利用systemctl进行配置了

    首先,使用systemctl start [服务名(也是文件名)]可测试服务是否可以成功运行,如果不能运行则可以使用systemctl status [服务名(也是文件名)]查看错误信息和其他服务信息,然后根据报错进行修改,直到可以start,如果不放心还可以测试restart和stop命令。

    接着,只要使用systemctl enable xxxxx就可以将所编写的服务添加至开机启动即可。

    我的脚本编写方法参照了nginx的编写方法,也可以根据其他功能类似的程序。

    这样看来,虽然systemctl比较陌生,但是其实比init.d那种方式简单不少,而且使用简单,systemctl能简化的操作还有很多,现在也有不少的资料,看来RHEL/CentOS比其他的Linux发行版还是比较先进的,此次更新也终于舍弃了Linux 2.6内核,无论是速度还是稳定性都提升不少。

    http://www.linuxidc.com/Linux/2014-07/104487.htm

  • 相关阅读:
    图片压缩后,依然很大的解决方案
    怎么使用javascript实现类的功能
    javascript实现像java、c#之类的sleep暂停的函数功能
    用ajax和asp.net实现智能搜索功能
    insert into 和insert into select性能比较
    百度编辑器
    document.selection.createRange()
    CSS设置透明效果
    class中一个小技巧
    asp.net中 解析JSON
  • 原文地址:https://www.cnblogs.com/softidea/p/5270330.html
Copyright © 2020-2023  润新知