阿里云服务器ecs配置之安装mysql

安装mysql数据库
    一、安装工做:
        下载 mysql 源安装包
            [root@ming ~]# wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

        安装 mysql 源
            [root@ming ~]# yum localinstall mysql57-community-release-el7-11.noarch.rpm

        检查 mysql 源是否安装成功
            [root@ming ~]# yum repolist enabled | grep “mysql.-community.”

    二、安装 MySQL
        [root@ming ~]# yum install mysql-community-server
        # 删除 [root@ming ~]# yum remove ***

    三、启动 MySQL 服务
        [root@ming ~]# systemctl start mysqld

    四、设置开机启动
        [root@ming ~]# systemctl enable mysqld
        [root@ming ~]# systemctl daemon-reload

    五、修改 root 本地登陆密码
        mysql 安装完成以后,在 / var/log/mysqld.log 文件中给 root 生成了一个默认密码。经过下面的方式找到root 默认密码:
            [root@ming ~]# grep 'temporary password' /var/log/mysqld.log
            [root@ming ~]# 2018-11-08T02:32:57.526641Z 1 [Note] A temporary password is generated for root@localhost: 3GNiipwtol.l
    
        而后登陆 mysql 进行修改:
            [root@ming ~]# mysql -uroot -p
            mysql> set password = password('mima');
            
    六、建立用户
        create user 'mingyuan'@'%' identified by 'mima';
        # host:指定该用户在哪一个主机上能够登录,若是是本地用户可用localhost,若是想让该用户能够从任意远程主机登录,可使用通配符%
        # password:该用户的登录密码,密码能够为空,若是为空则该用户能够不须要密码登录服务器
        
    七、给新建立的用户受权
        mysql> grant all on blog.* to 'mingyuan'@'%';
        # privileges:用户的操做权限,如SELECT,INSERT,UPDATE等,若是要授予所的权限则使用ALL
        # databasename:数据库名
        # tablename:表名,若是要授予该用户对全部数据库和表的相应操做权限则可用*表示,如*.*

    八、拿着建立好的新用户就能够在其余主机客户端上访问已受权的数据库了。
        C:\Users\MingYuan>mysql -h 47.101.137.228 -u mingyuan -p
        Enter password: ********
        

    设置与更改用户密码
        SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');
        # 若是是当前登录用户用:        SET PASSWORD = PASSWORD("newpassword");

    撤销用户权限
        REVOKE privilege ON databasename.tablename FROM 'username'@'host';
        # privilege, databasename, tablename:同受权部分
        # 如:REVOKE SELECT ON *.* FROM 'pig'@'%';
            # 怎么受权就怎么撤销,具体信息能够用命令SHOW GRANTS FOR 'pig'@'%'; 查看。
            
    删除用户
        DROP USER 'username'@'host';

    # 注:
    # root密码忘了,修改配置文件 vim /etc/my.cnf 在[mysqld]字段下添加skip-grant-tables,重启免密码登陆。
    # 登陆后再开个连接,还原刚才的修改,更新配置 FLUSH PRIVILEGES;
    # 回到第一个窗口里改密码,SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');
        html


 9.数据库原来是SQLite的,想换成Mysql,请查看文章:如何把SQLite数据库转换为Mysql数据库mysql

备份与还原(重点)
            1、备份(导出)
                全量备份(数据+结构):    #mysqldump -uroot -pmima -A > 备份文件路径
                指定库备份(数据+洁构):    #mysqldump -uroot -p密码 库名 > 备份文件路径
                多个库备份(数据+结构):    #mysqldump -uroot -p123456 --databases dbl db2 > 备份文件路径
            2、还原(导入)
                还原部分(1) mysql命令行source方法和(2)系统命令行方法
                1、还原所有数据库:
                    (1) mysql命令行: mysql> source 备份交件路径
                    (2) 系统命令行: #mysql -uroot -p123456 < 备份文件路径
                2、还原单个数据库(需指定数据库)
                    (1) mysql> use 库名 
                        mysql> source 备份文件路径
                    (2) #mysql -uroot -p123456 库名 < 备份文件路径

 

mysql字符编码
查看全局编码  show variables like '%char%';
查看正在使用的数据库  select database();
查看单个数据库编码  show create database blog;
        经过MySQL命令行修改:(编码可选)
        mysql> set character_set_client=utf8;
        mysql> set character_set_connection=utf8;
        mysql> set character_set_database=utf8;
        mysql> set character_set_results=utf8;
        mysql> set character_set_server=utf8;
        mysql> set character_set_system=utf8;
        mysql> set collation_connection=utf8;
        mysql> set collation_database=utf8;
        mysql> set collation_server=utf8;
        固然还有:
        修改数据库的字符集mysql>use mydb
        mysql>alter database mydb character set utf8;
建立数据库指定数据库的字符集
mysql>create database mydb character set utf8;
 

10.设置永久的字符编码,即须要在配置文件中修改数据库的字符编码nginx

  编辑 /etc/my.cnf,sql

    在里面加入,已经有[XXX]的,在里面直接加入便可。 数据库

    [mysqld]django

    character-set-server=utf8 vim

    [client]服务器

    default-character-set=utf8 ide

    [mysql]编码

    default-character-set=utf8

  而后重启数据库便可,service mysqld restart

相关文章
相关标签/搜索