1. 如何初始化mysql数据库
初始化mysql数据库,在shell中运行以下命令:
cd /usr/local/mysql
mkdir sock
cd /usr/local/mysql/bin
初始化数据库
./mysql_install_db--user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
或者# mysqld --initialize
(1)mysql如何设置默认数据库扩展阅读
mysql数据库的备份
1、物理冷备份,需要在数据库关闭状态下进行,能够较好的保证数据库的完整性。一般用于非核心业务,这类业务一般都允许终端,物理冷备份的特点就是速度快,恢复操作简单。通常通过直接打包数据库文件夹(如:/usr/local/mysql/data)来实现
2、通过启用二进制日志进行增量备份,MySQL支持增量备份,进行增量备份时必须启用二进制日志。二进制日志文件为用户提供复制,对执行备份点后进行的数据库更改所需的信息进行恢复。如果进行增量备份,需要刷新二进制日志。
2. 如何设置mysql数据库的路径
MySQL默认的数据文件存储目录为/var/lib/mysql。假如要把MySQL目录移到/home/data下需要进行下面几步:x0dx0a1、home目录下建立data目录x0dx0acd /homex0dx0amkdir datax0dx0a2、把MySQL服务进程停掉x0dx0amysqladmin -u root -p shutdownx0dx0a3、把/var/lib/mysql整个目录移到/home/datax0dx0amv /var/lib/mysql/home/data/x0dx0a这样就把MySQL的数据文件移动到了/home/data/mysql下。x0dx0a4、找到my.cnf配置文件x0dx0a如果/etc/目录下没有my.cnf配置文件,请到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个到/etc/并改名为my.cnf)中。命令如下:x0dx0ax0dx0a[root@test1 mysql]# cp /usr/share/mysql/my-medium.cnf/etc/my.cnfx0dx0ax0dx0a5、编辑MySQL的配置文件/etc/my.cnfx0dx0a为保证MySQL能够正常工作,需要指明mysql.sock文件的产生位置。修改socket=/var/lib/mysql/mysql.sock一行中等号右边的值为:/home/mysql/mysql.sock。操作如下:x0dx0ax0dx0avi my.cnf (用vi工具编辑my.cnf文件,找到下列数据修改之)x0dx0a# The MySQL serverx0dx0a[mysqld]x0dx0aport= 3306x0dx0a#socket = /var/lib/mysql/mysql.sock(原内容,为了更稳妥用“#”注释此行)x0dx0asocket = /home/data/mysql/mysql.sock(加上此行) x0dx0ax0dx0a6、修改MySQL启动脚本/etc/init.d/mysqlx0dx0a最后,需要修改MySQL启动脚本/etc/init.d/mysql,把其中datadir=/var/lib/mysql一行中,等号右边的路径改成你现在的实际存放路径:home/data/mysql。x0dx0ax0dx0a[root@test1 etc]# vi/etc/init.d/mysqlx0dx0a#datadir=/var/lib/mysql(注释此行)x0dx0adatadir=/home/data/mysql (加上此行) x0dx0ax0dx0a7、重新启动MySQL服务x0dx0ax0dx0a/etc/init.d/mysqlstartx0dx0ax0dx0a或用reboot命令重启Linuxx0dx0a如果工作正常移动就成功了,否则对照前面的7步再检查一下。x0dx0a还要注意目录的属主和权限。
3. 如何在MYSQL中设置一个默认的数据库
1、mysql默认的有 mysql test information_schema performance_schema 2、创建用户时候可以设定默认数据库 mysql -uroot -p123456 -e"CREATE USER 'user1'@'localhost' IDENTIFIED BY '123456';" mysql -uroot -p123456 -e"GRANT ALL ON db01.* ...
4. MySql怎么给列设置默认值 mysql修改默认值
1、首先新建一张表结构。
7、执行完毕再查询表结构sp_help t_temp_test可以看到表的默认值已经被更改为字符串‘123’。
5. mysql如何更改默认数据库表名称中 Yii2
常见的主要有三种方法:
如果所有表都是MyISAM类型的话,可以直接修改文件夹的名字。关闭mysql→把data目录中的db_name目录重命名为new_db_name→开启mysql
新建数据库,在新的数据库里重命名所有旧数据库中的表,再删除旧的数据库。具体操作命令如下:创建新的数据库→重命名数据表名称→删除旧的数据库。
CREATE DATABASE new_db_name;RENAME TABLE db_name.table1 TO new_db_name.table1,db_name.table2 TO new_db_name.table2;DROP DATABASE db_name;
利用mysqlmp命令从旧的数据导出数据,再导入新数据库。具体操作命令如下:导出数据→创建新的数据库→导入数据→删除旧的数据库。
mysqlmp -u root -p -h ip db_name > db_name_mp.SQLmysql -u root -p -h ip -e “CREATE DATABASE new_db_name”mysql -u root -p -h ip new_db_name < db_name_mp.SQLmysql -u root -p -h ip -e “DROP DATABASE db_name”
6. 如何更改在Ubuntu下的MySQL的默认数据库存储位置
CREATEDATABASEmysqldb
在默认的数据库存储位置下就会有个文件夹mysqldb。要操作数据库首先得停止数据库进程:
$sudo/etc/init.d/mysqlstop
本文以转移到/home/mysql这个位置为例,下面命令将原有数据库转移到新位置:
$sudocp–R–p/var/lib/mysql/home/mysql
编辑MySQL配置文件:
$gksugedit/etc/mysql/my.cnf
在 gedit中找到datadir这一行,将后面等于号之后的内容更改为/home/mysql然后保存退出。自Ubuntu 7.10开始,
Ubuntu就开始使用一种安全软件叫做AppArmor,这个安全软件会在你的文件系统中创建一个允许应用程序访问的区域(专业术语:应 用程序访问控制)。如果不为MySQL修改AppArmor配置文件,永远也无法为新设置的数据库存储位置启动
数据库服务。配置AppArmor:
$sudonano/etc/apparmor.d/usr.sbin.mysqld
在gedit中找到/var/lib/mysql/这两行,注释掉这两行,在这两行前分别添加一个符号#即可注释,在这两行之前或
之后加上下面内容:
/home/mysql/r,
/home/mysql/**rwk,
保存后退出,执行命令:
$sudo/etc/init.d/apparmorreload
返回Reloading AppArmor profiles : done.即可以重启MySQL服务:
$sudo/etc/init.d/mysqlstart
至此MySQL数据库存储位置就更改完毕了。FAQ:
Q:当我运行$sudo /etc/init.d/apparmor reload却返回信息
Skippingprofile/etc/apparmor.d/usr.sbin.mysqld~
:Warning.
gedit这样子的命令来编辑usr.sbin.mysqld这个配置文件的,这两个图形界面文本编辑器会在相同位置生成一个
usr.sbin.mysqld~的文件,从而影响了AppArmor读取配置文件,出现这个问题先删除这个usr.sbin.mysqld~文件:
然后使用$sudo nano这个终端文本编辑器来编辑配置文件即可。
7. 如何更改MYSQL默认数据库的目录
1.停止数据库服务:
使用/etc/init.d/mysql stop 或者 stop mysql
2. 在目标位置(/data)创建数据库文件的目录(如/mysqldb),并复制(如果不再使用默认的位置,则可以直接mv原先数据库文件到新目录下)原先的数据库文件目录到该目录下:
cd /data
mkdir mysqldb
cp -r /var/lib/mysql /data/mysqldb/
经过一段时间的等待后,在/data/mysqldb/下面就有了原先默认的mysql数据库文件目录的拷贝“/mysql”
3.修改my.cnf文件
# vim /etc/mysql/my.cnf
将datadir = /var/lib/mysql 改为 datadir = /data/mysqldb/mysql
另外由于当前my.cnf 中的socket = /var/run/mysqld/mysqld.sock(而并非像网上所说的sock = /var/lib/mysql/mysql.sock),即socket的位置并不在数据库文件所在的位置,因此可以不做类似网上其他网页所说的,要使用以下的命令做一个mysql.sock 链接:
ln -s /data/mysqldb/mysql/mysql.sock /var/lib/mysql/mysql.sock (需要从/home/data/mysql下复制一份过来)
4. 修改数据库的权限:
# chown -R mysql:mysql /data/mysqldb/mysql/ ← 改变数据库文件目录的归属为mysql
# chmod 700 /data/mysqldb/mysql/whois/ ← 改变数据库目录whois的属性为700
# chmod 660 /data/mysqldb/mysql/whois/* ← 改变数据库中数据表的属性为660
5. 修改文件usr.sbin.mysqld
# vim /etc/apparmor.d/usr.sbin.mysqld
把
/var/lib/mysql r,
/var/lib/mysql/** rwk,
改成
/data/mysqldb/mysql/ r,
/data/mysqldb/mysql/** rwk,
注意:没有该步骤的话,将导致数据库服务无法重启,好像在重启,但是一直卡住无反应。
6.启动mysql服务器
/etc/init.d/apparmor restart
/etc/init.d/mysql restart (或者使用 restart mysql)