Mariadb数据库的安装
1、Ubuntu 18 更换源
1. 复制源文件备份,以防万一
sources.list是包管理工具apt所用的记录软件包仓库位置的配置文件,同样类型的还有位于 同目录下sources.list.d文件下的各种.list后缀的各文件。
我们要修改的文件是sources.list,它在目录/etc/apt/下,
命令如下:
1、进入对应目录
cd /etc/apt/
2、先进行文件的拷贝,以访万一
sudo cp sources.list sources.list.bak
2、查看版本信息
Ubuntu18.04版之前的任一版更改apt源为国内源方法早就有了,内容大同小异,主要就是不同版本的系统代码不同导致增加的东西不同,所以我们需要查看一下版本的信息,然后直接套规律即可:
使用如下命令:
lsb_release -c
得到本系统的系统代号,如下图所示:
我们可以看到新版本的Ubuntu系统代号为bionic
Ubuntu不同版本的系统代号如下:
Ubuntu 12.04 (LTS)代号为precise。
Ubuntu 14.04 (LTS)代号为trusty。
Ubuntu 15.04 代号为vivid。
Ubuntu 15.10 代号为wily。
Ubuntu 16.04 (LTS)代号为xenial。
3、更改内容
1、编辑该文件
sudo vim source.list
2、若没有vim,安装即可
sudo apt-get install vim
3.将原有的内容注释掉,添加以下内容(或者你把里面内容修改成下面的就可以,但是不能有除了以下内容的有效内容)
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
4、更新
sudo apt update
2、Mariadb的安装
1、安装
sudo apt-get install mariadb-server
2、进入数据库更改root的密码
mysql -uroot -p
(初始root没有密码)
版本号为10.1.47
查询数据库用户
select * from mysql.user
更改root的密码
update mysql.user set password=password('新密码') where User="root" and Host="localhost";
退出
exit
重新进入数据库
mysql -u root -p
(输入密码即可)
3、数据库的创建(database1)
创建weblibnew数据库
create database database1 default charset utf8;
4、数据库用户的创建
1、创建weblib用户,密码自己设置
CREATE USER 'user1'@'localhost' IDENTIFIED BY '用户的密码';
2、授予weblib用户weblib的权限(前一个weblibnew是数据库名称,后面一个weblib是数据库用户的名称)
grant all privileges on database1.* to 'user1'@'localhost';
3、刷新权限
flush privileges;
4、退出
exit
5、验证
mysql -u user1 -p
(输入密码)
show databases;
(可以看到database1数据库即可)
3、数据库字符集修改
1、mysql的安装目录是/etc/mysql,所以去对应目录
cd /etc/mysql/mariadb.conf.d
2、修改server文件:
vim 50-server.conf
将以下内容修改
#character-set-server = utf8mb4
#collation-server = utf8mb4_general_ci
character-set-server=utf8
collation-server=utf8_unicode_ci
3、修改client文件
vim 50-client.conf
将以下内容修改:
[client]
# Default is Latin1, if you need UTF-8 set this (also in server section)
#default-character-set = utf8mb4
default-character-set = utf8
4、重启
service mariadb restart
可以进mysql查看一下:
SHOW VARIABLES LIKE 'character%';
常用的一些命令
用某个用户进行登录:
mysql -u用户名 -p密码
显示数据库
show databases;
创建数据库
create database name;
选择数据库
use databasename;
执行命令
source /root/20151010.sql
直接删除数据库,不提醒
drop database name
显示表
show tables;
显示具体的表结构
describe tablename;
创建用户
CREATE USER 'root'@'localhost' IDENTIFIED BY 'root123'
更新用户密码
update mysql.user set password=password('新密码') where User="phplamp" and Host="localhost";
删除用户
drop user user_name;
授予权限
grant all privileges on 数据库名称.* to '用户名称'@'localhost';(给该用户授于权限)
更新权限
flush privileges;
3、忘记root密码
进入到这个配置文件:
sudo vim /etc/mysql/mariadb.conf.d/50-server.cnf
然后在这个配置文件中的[mysqld]
这一块中加入skip-grant-tables这句话。
复制代码
#
# * Basic Settings
#
[mysqld]
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking (add的代码)
skip-grant-tables
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 127.0.0.1
重启
service mariadb restart
进入mysql修改root的密码:
mysql -u root
update mysql.user set password=password('新密码') where User="root" and Host="localhost"
flush privileges
修改完毕后进入配置文件将加的那句给去除掉
用新密码登录,如果还是报错,请看下面:
继续把刚才删掉的配置文件的那串代码重新加上去,重新用无密码的方式登录进去
use mysql;
select user,plugin from user;
注意看root这一列,如果有下是出现下列这种情况就继续看下去,否则就没办法了
update user set authentication_string=password('密码'),plugin='mysql_native_password' where user='root';
select user,plugin from user;
注意看root这一列,后如果出现下列情况就成功了
flush privileges
修改完毕后进入配置文件将加的那句给去除掉
再用新密码尝试登录